{ "app": { "title": "Редактор частиц Spine", "resizeTimeline": "Перетащите, чтобы изменить высоту временной шкалы", "systems": "Системы", "particlesBones": "Частицы (кости)", "rootBone": "Корневая кость", "hudTip": "Прокрутка — масштаб · Левая кнопка мыши — перемещение холста" }, "language": { "label": "Язык", "zhCN": "中文", "zhTW": "繁體中文", "en": "English", "ja": "日本語", "ko": "한국어", "fr": "Français", "de": "Deutsch", "ptBR": "Português", "es": "Español" }, "welcome": { "documentTitle": "Редактор частиц Spine", "titleLead": "От систем частиц Spine", "titleAccent": "к инструментам Spine", "backToTools": "Вернуться к выбору инструментов", "editor": { "badge": "РЕДАКТОР ЧАСТИЦ", "title": "Редактор частиц", "description": "Системы частиц Spine с бесплатным экспортом JSON и проектов Spine.", "tagPreview": "Предпросмотр", "tagSequence": "Экспорт проекта Spine", "tagExport": "Экспорт JSON", "cta": "Открыть редактор частиц" }, "viewer": { "badge": "ПЛАГИН EAGLE", "description": "Удобный просмотр ресурсов Spine в Eagle.", "tagVersions": "3.4–4.3", "tagSkins": "Предпросмотр анимации", "tagTimeline": "Поддержка форматов", "cta": "Открыть SpineViewer" }, "thumbnail": { "badge": "ПЛАГИН EAGLE", "auto": "Автогенерация", "description": "Автоматически распознаёт ресурсы Spine и создаёт миниатюры. Дополнительный инструмент для SpineViewer.", "tagPairing": "Автосопоставление", "tagModes": "Статичная / анимированная", "tagBatch": "Пакетная генерация", "cta": "Открыть SpineThumbnails" } }, "announcement": { "close": "Закрыть объявление" }, "common": { "close": "Закрыть", "collapse": "Свернуть", "reset": "Сбросить", "add": "Добавить", "remove": "Убрать", "delete": "Удалить", "clear": "Очистить", "cancel": "Отмена", "confirm": "Применить", "none": "Нет", "enabled": "Включено", "disabled": "Отключено", "fixed": "Фиксированное", "random": "Случайное", "curve": "Кривая", "followExport": "Как при экспорте", "linear": "Линейная", "bezier": "Безье", "above": "Выше", "below": "Ниже", "left": "Слева", "right": "Справа", "seconds": "с", "frames": "кадр." }, "toolbar": { "settings": "Настройки", "undo": "Отменить действие (Ctrl+Z)", "pan": "Перемещение холста (Q)", "translate": "Перемещение (W)", "rotate": "Поворот (E)", "scale": "Масштабирование (R)", "zoomIn": "Увеличить", "zoomOut": "Уменьшить", "fitView": "Вписать холст", "toggleGrid": "Показать или скрыть сетку", "resetView": "Сбросить вид", "background": "Фон", "backgroundSettings": "Настройки фонового изображения", "changeBackground": "Заменить изображение", "uploadBackground": "Загрузить изображение", "clearBackground": "Очистить фон", "noBackground": "Изображение не загружено", "backgroundX": "Смещение фона по X", "backgroundY": "Смещение фона по Y", "backgroundOpacity": "Непрозрачность фона", "opacity": "Непрозрачность", "help": "Справка", "openHelp": "Открыть справку" }, "settings": { "title": "Настройки", "layout": "Расположение интерфейса", "floatingMenu": "Плавающее меню", "floatingMenuParticleOnly": "Сначала выберите систему частиц", "parameterPanelPosition": "Положение панели параметров", "panelOnRight": "Показывать панель параметров справа", "history": "История действий", "maxUndo": "Максимум шагов отмены", "canvasGuides": "Вспомогательные элементы холста", "emitter": "Точка эмиттера", "bones": "Связи костей", "bonePointSize": "Размер точек костей", "boneAxisSize": "Размер осей", "skinMesh": "Сетка скина", "enableTicks": "Показывать деления", "tickFontSize": "Размер текста делений", "tickWidth": "Толщина линий делений", "axisColor": "Цвет осей", "showAxisLabels": "Показывать значения делений", "unsavedPrompt": "Предупреждать о несохранённых изменениях", "unsavedLeaveConfirm": "В проекте есть несохранённые изменения. Вернуться на главную страницу инструментов?", "showProjectSize": "Показывать размер конфигураций", "cacheNote": "Все настройки автоматически сохраняются в текущем браузере" }, "config": { "title": "Управление конфигурацией", "save": "Сохранить конфигурацию", "saveTitle": "Сохранить конфигурацию в кэш браузера", "load": "Загрузить конфигурацию", "loadTitle": "Загрузить локальный файл конфигурации редактора", "presets": "Список шаблонов", "selectPreset": "Выбрать шаблон", "noPresets": "Шаблоны не найдены", "saved": "Конфигурация сохранена локально", "loading": "Загрузка конфигурации…", "loaded": "Загружено: {name}", "presetLoading": "Загрузка шаблона…", "presetLoaded": "Шаблон загружен: {name}", "presetNamingError": "{message}. Проверьте имя файла шаблона.", "presetTransferTitle": "Загрузка шаблона", "presetDownloading": "Загрузка {file}…", "presetParsing": "Разбор конфигурации шаблона…", "presetRestoring": "Разбор и восстановление ресурсов шаблона…", "presetComplete": "Шаблон загружен", "presetListError": "Не удалось прочитать список шаблонов", "presetReadError": "Не удалось прочитать шаблон: {file}", "local": { "listTitle": "Список конфигураций", "empty": "В этом браузере пока нет сохранённых конфигураций", "saveTitle": "Сохранить конфигурацию в кэш браузера", "name": "Имя конфигурации", "namePlaceholder": "Например: эффект фейерверка", "load": "Загрузить", "loadHint": "Дважды щёлкните для загрузки", "download": "Скачать", "delete": "Удалить", "downloadCurrent": "Скачать текущую конфигурацию", "downloadAll": "Скачать все конфигурации", "loadAll": "Загрузить все конфигурации", "loadAllConfirm": "Импортировать конфигурации в количестве {count}? Одноимённые конфигурации будут заменены.", "loadAllDone": "Из файлов загружено конфигураций: {count}", "loadAllPartial": "Импортировано конфигураций: {imported}; ошибок в файлах: {failed}", "overwriteSave": "Конфигурация «{name}» уже существует. Заменить её?", "loadOverwrite": "Загрузка «{name}» заменит текущую сцену, а несохранённые изменения будут потеряны. Продолжить?", "deleteConfirm": "Удалить «{name}»?", "nameRequired": "Введите имя конфигурации", "nameInvalid": "Имя не может содержать \\ / : * ? \" < > |", "storageUnavailable": "Локальное хранилище браузера недоступно", "saved": "Сохранено в браузере: {name}", "loaded": "Загружено из браузера: {name}", "appendToScene": "Добавить эту конфигурацию в сцену", "appending": "Добавление конфигурации: {name}", "appended": "Добавлено в сцену: {name}", "deleted": "Удалено из кэша браузера: {name}", "downloadEmpty": "Нет конфигураций для скачивания", "downloaded": "Скачано: {name}" } }, "curve": { "bezierHint": "Перетаскивайте квадратные маркеры · Дважды щёлкните по пустому месту, чтобы добавить точку · Дважды щёлкните по точке, чтобы удалить её", "linearHint": "Дважды щёлкните по пустому месту, чтобы добавить точку · Дважды щёлкните по точке, чтобы удалить её · Перетаскивайте точки для настройки", "resetTitle": "Восстановить кривую по умолчанию" }, "gradient": { "addTitle": "Дважды щёлкните по цветовой полосе, чтобы добавить остановку", "color": "Цвет остановки", "colorValue": "Значение цвета остановки", "position": "Положение остановки", "addMiddle": "Добавить цвет посередине", "delete": "Удалить выбранную остановку", "hint": "Дважды щёлкните, чтобы добавить · Перетащите остановку, чтобы переместить · Дважды щёлкните по остановке, чтобы удалить" }, "attributeControl": { "angleOffset": "Смещение угла", "value": "Значение", "lower": "Минимум", "upper": "Максимум", "rangeLower": "Нижняя граница диапазона", "rangeUpper": "Верхняя граница диапазона", "curveInput": "Вход кривой →", "direction": "Направление эмиссии" }, "pivot": { "title": "Опорная точка текстуры", "zoomOut": "Уменьшить", "zoomIn": "Увеличить", "expand": "Открыть полноэкранный редактор опорной точки", "interaction": "Щёлкните или перетащите, чтобы задать опорную точку · Перетаскивание правой кнопкой — панорамирование · Прокрутка — масштаб", "previewAlt": "Предпросмотр опорной точки", "noImage": "Изображение не выбрано", "resetCenter": "По центру (50%, 50%)", "coordinates": "Координаты опорной точки (%)", "rotationTest": "Проверка вращения вокруг опорной точки", "static": "Статично", "spin": "Вращение", "swing": "Колебание", "rotationAlt": "Проверка вращения", "topLeft": "Сверху слева", "top": "Сверху", "topRight": "Сверху справа", "left": "Слева", "center": "По центру", "right": "Справа", "bottomLeft": "Снизу слева", "bottom": "Снизу", "bottomRight": "Снизу справа" }, "image": { "chooseSequence": "Выбрать кадры последовательности", "chooseLocal": "Выбрать локальное изображение", "subfolder": "Подпапка", "name": "Имя", "restore": "Восстановить {name}", "deleteResource": "Удалить ресурс изображения", "imageMode": "Режим изображения", "fixed": "Одно изображение", "sequence": "Последовательность кадров", "playbackMode": "Воспроизведение", "onceHide": "Один раз, скрыть после последнего кадра", "onceHold": "Один раз, удержать последний кадр", "loopForward": "Цикл в прямом направлении", "loopReverse": "Цикл в обратном направлении", "playbackFps": "Частота воспроизведения, кадр/с", "startFrame": "Начальный кадр", "fixedFirstFrame": "Фиксировать первый кадр", "randomFrame": "Случайно", "chooseSequenceMulti": "Выбрать кадры последовательности (несколько)", "weight": "Вес, %", "unlockWeight": "Разблокировать вес", "lockWeight": "Зафиксировать текущий вес", "pivot": "Опорная точка текстуры", "collapsePivot": "Свернуть редактор опорной точки", "expandPivot": "Развернуть редактор опорной точки", "pivotModal": "Полноэкранная точная настройка опорной точки", "pivotModalDesc": "Щёлкните или перетащите по текстуре, чтобы точно задать центр вращения и колебания частицы", "pivotZoomHint": "Поддерживается увеличение от 100% до 400% для точного совмещения с кончиком или основанием:", "confirmPivot": "Применить и сохранить опорную точку", "noSequence": "Последовательность кадров не выбрана", "firstFrame": "Кадр 1", "firstImage": "первое изображение", "lastImage": "последнее изображение", "pivotOn": "Включено: X {x}% | Y {y}%", "pivotOff": "Отключено, используется центр изображения (50%, 50%)", "pivotCustom": "Пользовательская опорная точка: X {x}% | Y {y}%", "frameCountOne": "1 кадр · {name}", "frameCountMany": "Кадров: {count} · {first} → {last}", "sequenceSelected": "Выбрано кадров: {count}; воспроизведение от {first} до {last}" }, "timeline": { "play": "Воспроизвести (D)", "pause": "Пауза (D)", "toStart": "Перейти к первому кадру (S)", "previous": "Предыдущий кадр", "next": "Следующий кадр", "toEnd": "Перейти к последнему кадру", "continuousLoop": "Непрерывное циклическое воспроизведение", "abLoop": "Независимый цикл диапазона A/B", "abLoopShort": "Цикл A/B", "abRange": "Диапазон цикла A/B", "playbackStart": "Пользовательский начальный кадр воспроизведения", "playbackEnd": "Пользовательский конечный кадр воспроизведения", "startFrame": "Начальный кадр воспроизведения", "endFrame": "Конечный кадр воспроизведения", "frame": "Кадр", "emission": "Испускание", "particleLife": "Активные частицы", "spineAnimation": "Анимация Spine", "ownerAnimation": "Связанная анимация", "setOwnerAnimation": "Выбрать анимацию, к которой относится система частиц", "chooseOwnerAnimation": "Выбрать связанную анимацию", "animationName": "Имя анимации", "renameAnimation": "Переименовать текущую анимацию", "rename": "Переименовать", "newAnimation": "+ Новая", "keepOneAnimation": "Должна остаться хотя бы одна анимация", "spinePreview": "Анимация предпросмотра Spine", "noSpineAnimation": "Нет доступных анимаций Spine", "none": "Нет", "systemName": "Система {index}", "dragLoopDuration": "Перетащите, чтобы изменить длительность цикла", "dragEmissionDuration": "Перетащите, чтобы изменить длительность испускания", "dragSpineStart": "Перетащите, чтобы изменить время начала анимации", "noAnimationData": "Нет данных анимации для отображения", "animationNameEmpty": "Имя анимации не может быть пустым", "animationNameDuplicate": "Анимация с таким именем уже существует", "animationRenameFailed": "Не удалось переименовать анимацию", "zoomIn": "Увеличить", "zoomOut": "Уменьшить", "zoomFit": "Вписать", "frameStatus": "Кадр {current} / {total}" }, "emission": { "title": "Эмиссия", "reset": "Сбросить параметры эмиссии", "stream": "Поток", "burst": "Пакетное испускание", "normalStream": "Обычный поток", "loopStream": "Циклический поток", "rate": "Интенсивность эмиссии", "duration": "Длительность эмиссии", "loopDuration": "Длительность эмиссии (кадр.)", "generateStart": "Создать начальную анимацию цикла", "generateEnd": "Создать конечную анимацию цикла", "customDuration": "Пользовательская длительность", "auto": "Авто, {frames} кадр.", "startLoopDuration": "Длительность начального участка цикла", "endLoopDuration": "Длительность конечного участка цикла", "loopWarning": "В режиме циклического потока следование за костью и путём недоступно; при входе и выходе настройки следования сбрасываются.", "burstCount": "Количество в пакете", "delay": "Задержка", "shapeTitle": "Форма эмиттера", "shapeReset": "Сбросить параметры формы эмиттера", "shape": "Форма", "point": "Точка", "circle": "Окружность", "rect": "Прямоугольник", "cone": "Конус", "path": "Путь", "innerDiameter": "Внутренний диаметр", "outerDiameter": "Внешний диаметр", "innerRadius": "Внутренний радиус", "outerRadius": "Внешний радиус", "coneDirection": "Направление конуса", "coneAngle": "Угол раскрытия конуса", "innerWidth": "Внутренняя ширина", "innerHeight": "Внутренняя высота", "outerWidth": "Внешняя ширина", "outerHeight": "Внешняя высота", "selectPath": "Путь генерации", "noPath": "Без пути (испускание из точки)", "birthDistribution": "Распределение рождения", "evenDistribution": "Равномерное фиксированное распределение", "randomDistribution": "Случайное распределение", "emissionAngle": "Угол эмиссии", "radial": "Радиальное (из центра наружу)", "pathNormal": "Нормаль к пути", "pathTangent": "По касательной к пути", "fixedAngle": "Фиксированный угол", "baseAngle": "Базовый угол", "randomRange": "Случайный диапазон", "showShape": "Показать форму" }, "attributes": { "title": "Свойства частиц", "reset": "Сбросить параметры частиц", "initialParams": "Начальные параметры частиц", "initialLife": "Начальное время жизни", "randomSample": "Случайная выборка →", "initialSpeed": "Начальная скорость", "initialScale": "Начальный масштаб", "uniform": "Равномерно", "separateXY": "Раздельно XY", "scaleX": "Масштаб X", "scaleY": "Масштаб Y", "initialRotation": "Начальный поворот", "lifecycleTitle": "Параметры на протяжении времени жизни", "speedOverLife": "Скорость на протяжении времени жизни", "speedMultiplier": "Множитель скорости", "lifeTo": "Время жизни →", "scaleOverLife": "Масштаб на протяжении времени жизни", "scaleMultiplier": "Множитель масштаба", "multiplierX": "Множитель X", "multiplierY": "Множитель Y", "rotationOverLife": "Вращение на протяжении времени жизни", "rotationSpeed": "Скорость вращения" }, "appearance": { "title": "Внешний вид и ресурсы", "reset": "Сбросить настройки внешнего вида и ресурсов", "opacity": "Непрозрачность", "curveMode": "Режим кривой", "transparent": "0 (прозрачный)", "opaque": "1 (непрозрачный)", "renderLayer": "Слой отрисовки (слот Spine)", "top": "Самый верхний", "spineSlot": "Слот Spine", "selectSpine": "Выберите Spine", "noSpine": "Нет доступных ресурсов Spine", "noSlot": "Слот не выбран", "reselect": "Выбрать заново", "selectSlot": "Выбрать слот", "searchSlots": "Поиск слотов или вложений…", "searchSlotsAria": "Поиск слотов", "emptySlot": "Пустой слот", "noMatchingSlots": "Подходящие слоты не найдены", "above": "Над изображением слота", "below": "Под изображением слота", "followAttachment": "Следовать видимости вложения", "previewOnly": "Изменение слоя влияет только на предпросмотр в редакторе и не экспортируется.", "imageResources": "Ресурсы изображений", "addImage": "Добавить ресурс изображения", "scale": "Масштаб", "color": "Цвет", "fixedColor": "Фиксированный цвет", "randomColor": "Случайный цвет", "lifetime": "На протяжении времени жизни", "normal": "Обычный", "add": "Сложение", "multiply": "Умножение", "screen": "Экранный", "fixedColorValue": "Значение фиксированного цвета", "randomColorHint": "Каждая частица выбирает цвет из градиента при рождении и сохраняет его до завершения времени жизни", "independentAlpha": "Независимая непрозрачность", "off": "Выключено" }, "renderLayer": { "slotLabelAbove": "{spine} / {slot} · над изображением", "slotLabelBelow": "{spine} / {slot} · под изображением", "resolvedAbove": "Отрисовка над изображением {slot} и под следующим слотом", "resolvedBetween": "Отрисовка между {previous} и {slot}", "warningNoSpine": "Загруженный Spine не найден. Частицы временно отрисовываются сверху.", "warningNoSelection": "Spine не выбран. Частицы временно отрисовываются сверху.", "warningMissingSpine": "Целевой Spine больше не существует. Частицы временно отрисовываются сверху.", "warningNotReady": "Целевой Spine не готов. Частицы временно отрисовываются сверху.", "warningMissingSlot": "Целевой слот не существует; возможно, ресурсы были заменены. Частицы временно отрисовываются сверху.", "warningFirstSlot": "Это первый слот, поэтому отрисовка под ним невозможна. Частицы временно отрисовываются сверху." }, "export": { "title": "Экспорт ресурсов", "reset": "Сбросить параметры экспорта", "imagesPath": "Путь к изображениям (Spine Images Path)", "spineVersion": "Версия Spine", "keyframeCurve": "Интерполяция ключевых кадров", "linear": "Линейная (Linear)", "smoothBezier": "Сглаженная Безье (Smooth Bézier)", "bezierHelp": "Сглаженная Безье аппроксимирует непрерывное движение в пределах допуска; рождение, смерть, смена вложения и резкие переходы по-прежнему используют ступенчатые ключи.", "spine38Help": "Spine 3.8 не поддерживает массивы кривых Безье для отдельных каналов. При экспорте они преобразуются в кусочно-линейные ключи с упрощением по допуску.", "fps": "Частота экспорта, кадр/с", "omitFps": "Не записывать fps", "fpsHelp": "При изменении FPS фактическая длительность анимации сохраняется; «Не записывать fps» лишь удаляет метаданные FPS в Spine.", "integerFrames": "Выравнивание по целым кадрам", "bonePool": "Пул объектов костей", "excludeEmpty": "Исключать пустые анимации", "baking": "Пересчёт и запекание анимации", "exportJsonTitle": "Экспортировать JSON Spine {version}", "preparing": "Подготовка экспорта…", "exportJson": "Экспортировать Spine JSON", "exportImagesTitle": "Скачать изображения текущих систем частиц в ZIP-архиве", "organizingImages": "Подготовка изображений…", "exportImages": "Экспортировать архив images", "generatingProject": "Создание проекта…", "exportSpine": "Экспортировать пакет .spine", "authorize": "Авторизовать текущий сайт", "authorizeTitle": "Авторизовать текущий сайт в локальном коннекторе", "refreshConnector": "Повторно проверить коннектор", "refresh": "Обновить", "recalculating": "Пересчёт анимации частиц…", "exported": "Экспортирован Spine {version}: систем частиц — {systems}, анимаций — {animations}, костей — {bones}{warning}", "resourceWarning": "; предупреждений о ресурсах — {count} (экспорт выполнен без отсутствующих изображений)", "timeout": "Истекло время запекания. Убедитесь, что страница всё ещё работает, и повторите попытку.", "preparingProject": "Подготовка изображений и вызов локального Spine…", "projectExported": "Создан {fileName}: проект .spine с изображениями ({images}), Spine {version}", "collectingImages": "Сбор изображений, используемых текущими системами частиц…", "imagesExported": "Создан {fileName}: изображений — {images}, папка {folder}/", "connectorChecking": "Проверка локального коннектора Spine…", "connectorOffline": "Локальный коннектор Spine не запущен", "spineNotFound": "Коннектор запущен, но Spine не найден", "notAuthorized": "Коннектор запущен, но текущий сайт не авторизован", "connectorReady": "Коннектор доступен · Spine готов", "connectorBusy": "Пересчёт и создание проекта Spine", "connectorGenerate": "Создать проект Spine {version} с помощью локального Spine", "unknown": "Неизвестно", "checking": "Проверка", "offline": "Не запущен", "notFound": "Spine не найден", "unauthorized": "Нет авторизации", "projectTransferTitle": "Экспорт пакета Spine", "projectTransferDetail": "Пересчёт анимации частиц…", "projectTransferDownload": "Загрузка проекта Spine началась", "generatingJson": "Создание JSON Spine…", "preparingProjectFiles": "Подготовка изображений проекта…", "uploading": "Передача данных в коннектор Spine…", "spineProcessing": "Spine преобразует проект. Подождите…", "downloadingProject": "Загрузка созданного проекта Spine…", "handingToBrowser": "Передача загрузки браузеру…" }, "transfer": { "completed": "Завершено", "failed": "Ошибка операции" }, "scene": { "title": "Объекты сцены", "addParticle": "Добавить систему частиц", "addParticleShort": "+Частицы", "addCollider": "Добавить коллайдер", "addColliderShort": "+Коллайдер", "addPath": "Добавить путь", "addPathShort": "+Путь", "addSpine": "Добавить Spine", "copyTitle": "Дублировать выбранный объект сцены", "contextCopy": "Копировать в буфер обмена", "contextPaste": "Вставить с заменой", "clipboardUnavailable": "Браузер не разрешает доступ к буферу обмена", "clipboardInvalid": "В буфере обмена нет допустимого объекта сцены", "clipboardCopyFailed": "Не удалось скопировать объект сцены в буфер обмена", "clipboardReadFailed": "Не удалось прочитать буфер обмена. Проверьте разрешения браузера.", "clipboardTypeMismatch": "Можно заменять только объект того же типа (в буфере: {source}, текущий: {target})", "clipboardPasteFailed": "Не удалось восстановить объект сцены", "showParticle": "Показать систему частиц", "hideParticle": "Скрыть систему частиц", "showCollider": "Показать коллайдер", "hideCollider": "Скрыть коллайдер", "showPath": "Показать путь", "hidePath": "Скрыть путь", "showSpine": "Показать Spine", "hideSpine": "Скрыть Spine", "particle": "Частицы", "subEmitter": "Дочерний эмиттер", "collision": "Столкновение", "path": "Путь", "deleteParticle": "Удалить систему частиц", "deleteCollider": "Удалить коллайдер", "deletePath": "Удалить путь", "deleteSpine": "Удалить Spine", "empty": "На сцене нет объектов", "name": "Имя", "positionX": "Позиция X", "positionY": "Позиция Y", "offsetX": "Смещение X", "offsetY": "Смещение Y", "rotation": "Поворот", "scaleX": "Масштаб X", "scaleY": "Масштаб Y", "warmupFrames": "Кадры предварительного прогрева", "seed": "Случайное зерно", "seedTitle": "Управляет всеми случайными свойствами системы частиц, выбором ресурсов и случайной выборкой модификаторов", "randomizeSeed": "Создать новое глобальное случайное зерно", "seedHint": "Управляет начальными случайными параметрами, выбором ресурсов и выборкой модификаторов; одинаковое зерно воспроизводит одинаковый результат", "colliderTitle": "Свойства коллайдера", "colliderName": "Имя коллайдера", "type": "Тип", "circle": "Окружность", "ellipse": "Эллипс", "rect": "Прямоугольник", "polygon": "Многоугольник", "custom": "Пользовательский", "enabled": "Включён", "xPosition": "Позиция X", "yPosition": "Позиция Y", "scaleXShort": "Масштаб X", "scaleYShort": "Масштаб Y", "radius": "Радиус", "radiusX": "Радиус X", "radiusY": "Радиус Y", "width": "Ширина", "height": "Высота", "sides": "Количество сторон", "collisionResponse": "Реакция на столкновение", "physics": "Физика (отскок / трение)", "pause": "Остановить на месте", "destroy": "Уничтожить сразу", "elasticity": "Упругость (0–1)", "friction": "Трение (0–1)", "followPath": "Движение по пути", "targetPath": "Целевой путь", "notSelected": "(Не выбрано)", "moveDuration": "Длительность перемещения (с)", "followDirection": "Ориентация по пути", "moveProgressCurve": "Кривая прогресса перемещения", "moveProgressHelp": "X: прошедшее время / длительность · Y: прогресс пути (0 = начало, 1 = конец)", "pathTitle": "Свойства пути", "pathName": "Имя пути", "closedPath": "Замкнутый путь", "pathColor": "Цвет пути", "pathHelp": "Управление:", "pathHelpItems": [ "Дважды щёлкните по пустому месту или кривой, чтобы добавить опорную точку", "Дважды щёлкните по опорной точке, чтобы удалить её", "Дважды щёлкните, задержите второй щелчок и перетащите, чтобы создать управляющие маркеры", "Перетаскивайте опорные точки для перемещения, а маркеры — для изменения кривой", "Shift + перетаскивание маркера: симметричные маркеры", "Alt + перетаскивание маркера: независимые маркеры", "Ctrl + щелчок / рамка: добавить узлы", "Alt + щелчок / рамка: убрать узлы", "Alt + щелчок по пустому месту: снять выделение", "Несколько выбранных опорных точек можно перемещать вместе" ], "applyPresetShape": "Применить готовую форму", "choosePreset": "Выбрать шаблон…", "square": "Квадрат", "star": "Звезда", "applyPreset": "Применить шаблон", "clearAnchors": "Очистить опорные точки", "panelHint": "Создавайте объекты сцены кнопками на панели сверху" }, "modifiers": { "title": "Модификаторы", "reset": "Сбросить модификаторы", "damping": "Затухание", "enableNoise": "Включить шум движения", "strength": "Сила", "noiseRange": "Амплитуда отклонения", "noiseSpeed": "Скорость изменения", "noiseHint": "Сила задаёт степень влияния · Амплитуда ограничивает максимальное отклонение · Скорость изменения задаёт частоту вариаций", "enableGravity": "Включить гравитацию", "gravityStrength": "Сила гравитации", "strengthMin": "Мин. сила", "strengthMax": "Макс. сила", "direction": "Направление", "gravityOverLife": "Гравитация на протяжении времени жизни", "windOverLife": "Ветер на протяжении времени жизни", "axisStrength": "Ось Y: сила 0–1", "directionHint": "0° — вправо · -90° — вниз · Отрицательная сила меняет направление", "enableWind": "Включить ветер", "windStrength": "Сила ветра", "enableForceField": "Включить силовое поле", "centerX": "Центр X", "centerY": "Центр Y", "forceStrength": "Сила поля", "forceRadius": "Радиус поля", "falloffMode": "Затухание", "constant": "Постоянное (без изменения в радиусе)", "linearFalloff": "Линейное (ноль на границе)", "inverseFalloff": "Обратно пропорциональное расстоянию (максимум в центре)", "forceHint": "Положительное значение притягивает · Отрицательное отталкивает · Круг поля можно перетаскивать на холсте", "showShape": "Показать форму", "enableVortex": "Включить вихрь", "vortexHint": "Положительное значение — против часовой стрелки · Отрицательное — по часовой", "enableAttraction": "Включить притяжение", "attractionX": "Точка притяжения X", "attractionY": "Точка притяжения Y", "attractionRadius": "Радиус притяжения", "attractionDuration": "Длительность притяжения", "delay": "Задержка", "delayMode": "Режим задержки", "globalTime": "Общее время", "particleLife": "Время жизни частицы", "attractionPath": "Траектория притяжения", "straight": "Прямая", "attractionHint": "Притяжение начинается после задержки · Частица уничтожается при входе в красный радиус · Круг притяжения можно перетаскивать на холсте", "enableTrail": "Включить шлейф", "trailImages": "Отдельные изображения шлейфа", "addTrailImage": "Добавить ресурс изображения шлейфа", "trailRotation": "Поворот", "trailBones": "Количество костей шлейфа", "trailRatio": "Доля шлейфа (%)", "trailLength": "Длина шлейфа", "randomRange": "Случайный диапазон", "lengthRatio": "Доля длины (%)", "lengthMin": "Мин. длина (%)", "lengthMax": "Макс. длина (%)", "trailWidth": "Ширина шлейфа", "widthRatio": "Доля ширины (%)", "widthMin": "Мин. ширина (%)", "widthMax": "Макс. ширина (%)", "widthScale": "Масштаб ширины", "followParticle": "Следовать за частицей", "lifeLengthCurve": "Длина на протяжении времени жизни", "shapeCurve": "Кривая формы (ширина от начала к концу)", "colorMode": "Режим цвета", "blendMode": "Режим смешивания", "fixedColor": "Фиксированный цвет", "alphaMode": "Режим непрозрачности", "opacity": "Непрозрачность", "gridRows": "Количество строк сетки", "gridCols": "Количество столбцов сетки", "trailHint": "Для каждой частицы создаётся группа одноуровневых костей шлейфа согласно доле ресурса; случайные длина и ширина фиксируются при рождении и воспроизводятся с тем же зерном", "enableFollow": "Включить следование эмиттера", "followMode": "Режим следования", "noFollow": "Нет", "followPath": "Следовать по пути", "selectedBone": "Выбранная кость", "emitterAngleMode": "Режим угла эмиттера", "fixedAngle": "Фиксированный угол", "followMoveDirection": "Следовать направлению движения", "moveProgressCurve": "Кривая прогресса перемещения (0→1)", "moveDuration": "Длительность перемещения (с)", "followSpace": "Пространство следования", "localSpace": "Локальное пространство (перемещение эмиттера)", "worldSpace": "Мировое пространство (перемещение точки рождения)", "moveDirection": "Направление движения", "forward": "Прямое (начало → конец)", "reverse": "Обратное (конец → начало)", "followOffset": "Начальное смещение (0–1)", "followSpaceHint": "В локальном пространстве перемещается весь эмиттер. В мировом пространстве перемещается только точка рождения; уже созданные частицы остаются в мировых координатах.", "followTarget": "Цель следования: ", "noValidBone": "Допустимая кость не привязана. Сначала выберите кость в иерархии Spine.", "rebind": "Привязать заново", "bind": "Привязать", "selectedBoneLabel": "Текущая кость: ", "boneLocalSpace": "Локальное пространство (следовать за костью)", "boneWorldSpace": "Мировое пространство (сохранять позицию частицы)", "offsetX": "Смещение позиции X", "offsetY": "Смещение позиции Y", "rotationOffset": "Смещение поворота", "scaleOffsetX": "Смещение масштаба X", "scaleOffsetY": "Смещение масштаба Y", "boneFollowHint": "Эмиттер следует только за позицией выбранной кости Spine и не наследует поворот или масштаб Spine; для преобразования частиц используются параметры системы частиц и смещения выше.", "enableCollision": "Включить столкновения", "collisionObjects": "Участвующие объекты столкновений", "colliderDisabled": "{name} (коллайдер отключён)", "clearCollider": "Удалить коллайдер {name} из списка", "addCollider": "Добавить коллайдер сцены", "noAvailableColliders": "Нет доступных коллайдеров", "noCollidersSelected": "Коллайдеры не выбраны; столкновения текущих частиц отключены", "available": "Доступен", "disabled": "Отключён", "collisionHint": "В столкновениях текущей системы участвуют только добавленные и включённые коллайдеры сцены", "enableSubEmitter": "Включить дочерние эмиттеры", "triggerTiming": "Событие запуска", "birth": "Рождение", "death": "Смерть", "collision": "Столкновение", "chooseTarget": "Выбрать целевую систему частиц", "noTarget": "Нет (система частиц)", "deleteSubEmitter": "Удалить этот дочерний эмиттер", "probability": "Вероятность запуска", "collisionLimit": "Лимит запусков при столкновениях", "inherit": "Наследование", "colorInheritMode": "Режим наследования цвета", "add": "Сложение", "replace": "Замена", "addSubEmitter": "+ Добавить дочерний эмиттер", "inheritNone": "Нет (по умолчанию)", "inheritAll": "Все свойства", "inheritColor": "Цвет", "inheritScale": "Размер", "inheritRotation": "Поворот", "inheritLife": "Время жизни" }, "spine": { "title": "Свойства Spine", "name": "Имя Spine", "xPosition": "Позиция X", "yPosition": "Позиция Y", "rotation": "Поворот", "scaleX": "Масштаб X", "scaleY": "Масштаб Y", "startTime": "Время начала", "resources": "Ресурсы Spine", "chooseFolder": "Выбрать папку и загрузить", "folderHint": "Однократно считывает JSON / SKEL, Atlas и все текстуры из папки; отдельные ресурсы всё равно можно заменить ниже.", "choose": "Выбрать", "chooseMultiple": "Выбрать несколько", "loading": "Загрузка…", "load": "↧ Загрузить", "clear": "Очистить", "supportNote": "Поддержка JSON Spine 3.8 / 4.0 / 4.1 / 4.2 / 4.3 · Среда выполнения нужной версии загружается по требованию · Полностью локально", "currentResource": "Текущий ресурс {version}", "animations": "Анимации Spine", "noAnimations": "Нет доступных анимаций", "timelineAnimation": "Анимация на временной шкале", "no": "Нет", "hierarchy": "Иерархия", "clearBoneTitle": "Нажмите, чтобы снять выбор кости", "noBoneTitle": "Кость не выбрана", "clearBone": "Снять выбор кости: {name}", "currentBone": "Текущая кость: ", "clearSlotTitle": "Нажмите, чтобы снять выбор слота", "noSlotTitle": "Слот не выбран", "clearSlot": "Снять выбор слота: {name}", "currentSlot": "Текущий слот: ", "notSelected": "Не выбрано", "expandAll": "Развернуть всё", "collapseAll": "Свернуть всё", "bones": "Кости", "slots": "Слоты", "notLoaded": "Spine не загружен", "searchBones": "Поиск костей", "searchBonesPlaceholder": "Поиск по именам костей…", "clearSearch": "Очистить поиск", "clearBoneSearch": "Очистить поиск костей", "noMatchingBones": "Подходящие кости не найдены", "expandChildren": "Развернуть дочерние кости", "collapseChildren": "Свернуть дочерние кости", "notLoadedSlots": "Слоты Spine не загружены", "searchSlots": "Поиск слотов", "searchSlotsPlaceholder": "Поиск слотов или вложений…", "clearSlotSearch": "Очистить поиск слотов", "noMatchingSlots": "Подходящие слоты не найдены", "slotTitle": "{name} (кость: {bone}, вложение: {attachment})", "empty": "Пусто", "textureSummary": "Текстур: {count} · {names}", "textureImages": "изображения текстур", "missingFolderAssets": "В выбранной папке отсутствует: {missing}", "chooseAssets": "Последовательно выберите данные Spine, Atlas и все изображения текстур" }, "help": { "title": "Справка", "subtitle": "Краткое руководство: от создания частиц до сохранения и экспорта", "tabsLabel": "Разделы справки", "updates": "Обновления версии", "updatesSubtitle": "Последние обновления функций", "releaseSummaryV11107": "Обновлено до V1.11.07", "releaseHeadingV11107": "Обновление от 07.11.2026:", "releaseSafariConnector": "Добавлена поддержка браузера Safari в коннектор.", "releaseSummaryV11106": "Обновлено до V1.11.06", "releaseHeadingV11106": "Обновление от 06.11.2026:", "releaseMenuLayerFix": "Исправлен порядок отображения кнопки перетаскивания в области управления меню.", "releaseSequenceStart": "Добавлено управление начальным кадром последовательности изображений с выбором фиксированного первого или случайного начального кадра.", "releaseSaveDialog": "Обновлено отображение окна сохранения конфигурации и добавлен список существующих конфигураций.", "releaseSummaryV11105": "Обновлено до V1.11.05", "releaseHeadingV11105": "Обновление от 05.11.2026:", "releaseWindowFix": "Исправлено отображение окна.", "releaseSummaryV11104": "Обновлено до V1.11.04", "releaseHeadingV11104": "Обновление от 04.11.2026:", "releaseLanguageUpdate": "Добавлена поддержка русского языка. Сайт всегда бесплатен и создаётся исключительно из интереса, поэтому в будущем, когда функции достигнут зрелости, мы рассматриваем полный переход на открытый исходный код. Спасибо за поддержку.", "releaseFollowUpdate": "Исправлен экспорт со следованием по пути.", "close": "Закрыть справку", "closeShort": "Закрыть (Esc)", "quickStart": "Быстрый старт", "stepCreate": "Создание объектов: на панели «Объекты сцены» используйте +Частицы / +Коллайдер / +Путь / +Spine.", "stepEdit": "Редактирование частиц: выберите систему частиц и последовательно настройте «Эмиссия → Форма эмиттера → Свойства частиц → Внешний вид и ресурсы → Модификаторы».", "stepPreview": "Просмотр результата: на временной шкале внизу можно воспроизводить, ставить паузу, перемещаться по кадрам или перетаскивать указатель; после изменения параметров анимация пересчитывается автоматически.", "stepExport": "Сохранение и экспорт: «Сохранить конфигурацию» сохраняет проект; «Spine JSON / архив images / пакет .spine» создаёт итоговые файлы.", "quickNote": "Кнопка «Сбросить» справа от заголовка каждого блока восстанавливает стандартные параметры. Системные настройки автоматически сохраняются в текущем браузере.", "commonOps": "Основные действия", "eye": "Видимость", "eyeDesc": "Показывает или скрывает отдельный объект. Скрытые системы частиц не экспортируются.", "copyDesc": "Полностью дублирует выбранный объект для сравнения параметров.", "sceneClipboard": "Буфер объектов сцены", "sceneClipboardDesc": "Щёлкните объект сцены правой кнопкой, чтобы скопировать его в буфер или заменить вставкой.", "backgroundDesc": "Загружает опорное изображение и позволяет настроить его положение и непрозрачность только для предпросмотра на холсте.", "settingsDesc": "Управление расположением интерфейса, вспомогательными элементами, делениями и другими настройками; значения автоматически сохраняются в браузере.", "undoDesc": "Ctrl+Z отменяет одно действие. Максимальное число шагов задаётся в системных настройках.", "spineBoneDesc": "Найдите и выберите кость в иерархии для следования эмиттера.", "shortcuts": "Горячие клавиши", "undoShortcut": "Отменить действие", "saveShortcut": "Сохранить конфигурацию", "panShortcut": "Перемещение холста", "translateShortcut": "Инструмент перемещения", "rotateShortcut": "Инструмент поворота", "scaleShortcut": "Инструмент масштабирования", "playShortcut": "Воспроизведение / пауза", "startShortcut": "Перейти к первому кадру", "shortcutNote": "Перед использованием Q / W / E / R щёлкните по холсту. При вводе текста в полях одиночные горячие клавиши не срабатывают.", "modules": "Подробное описание модулей", "configTitle": "Управление конфигурацией", "saveConfigDesc": "Сохраняет все объекты сцены и параметры в JSON-файл проекта; также поддерживается Ctrl+S.", "loadConfigDesc": "Загружает локальный файл конфигурации и полностью восстанавливает проект.", "presetDesc": "Выберите шаблон в раскрывающемся списке для быстрого применения; нажмите на список ещё раз, чтобы обновить его.", "configScope": "Область действия", "configScopeDesc": "Конфигурация содержит объекты и параметры; интерфейс и системные настройки хранятся в браузере отдельно.", "sceneTitle": "Объекты сцены", "particleDesc": "Основной объект. Позволяет задать позицию, смещение, поворот, масштаб и случайное зерно; одинаковое зерно воспроизводит одинаковый результат.", "colliderDesc": "Окружность, эллипс, прямоугольник, многоугольник или пользовательская форма; поддерживаются физический отскок, остановка, уничтожение и движение по пути.", "pathDesc": "Путь Безье с опорными точками, управляющими маркерами, замыканием, цветом и готовыми формами.", "spineDesc": "Загрузка данных Spine, Atlas и текстур; просмотр костей и слотов и их использование для следования эмиттера.", "sceneCommonDesc": "Объекты можно независимо скрывать, показывать и дублировать; скрытые системы частиц не экспортируются.", "emissionDesc": "Потоковая эмиссия, пакетное испускание, задержка и трёхчастный циклический поток с начальным, циклическим и конечным участками.", "burstDesc": "Однократное испускание заданного числа частиц.", "delayDesc": "Время ожидания до начала эмиссии; отображается у левого края полосы частиц.", "loopNote": "Циклический поток не поддерживает следование за костью и путём; при переключении эти настройки сбрасываются.", "shapeDesc": "Точка, окружность, прямоугольник, конус или путь в качестве области рождения. Для окружности и конуса используются внутренний и внешний радиусы, для прямоугольника — внутренние и внешние размеры.", "angleDesc": "Фиксированный или случайный угол, радиальное направление, нормаль или касательная к пути.", "initialDesc": "Время жизни, скорость, масштаб и поворот поддерживают фиксированный, случайный и криволинейный режимы. Поворот может следовать направлению эмиссии.", "overLifeDesc": "Множитель скорости, масштаба и скорость вращения можно задавать кривыми на протяжении времени жизни.", "alphaDesc": "Непрозрачность может быть фиксированной или задаваться кривой; режим кривой может следовать настройкам экспорта, быть линейным или Безье.", "imageDesc": "Одно изображение или последовательность кадров, случайный выбор изображений по весу, опорные точки, цвет, режимы смешивания и независимая непрозрачность.", "sequenceDesc": "Доступны режимы однократного скрытия, удержания последнего кадра, прямого и обратного цикла.", "noiseDesc": "Добавляет шум траектории с управлением силой, амплитудой и скоростью.", "gravityDesc": "Гравитация, ветер и кривые силы на протяжении времени жизни.", "forceDesc": "Глобальное силовое поле, вихрь, притяжение и столкновения.", "trailDesc": "Отдельные ресурсы шлейфа, число костей, длина, ширина, форма, цвет и кривые непрозрачности.", "followDesc": "Эмиттер может следовать по пути или за костью Spine.", "collisionDesc": "Выбор коллайдеров сцены и реакции частиц на столкновения.", "exportDesc": "Настройка пути к изображениям, версии Spine, кривых ключевых кадров, FPS, целых кадров, пула костей и пустых анимаций.", "exportButtonsDesc": "Экспорт Spine JSON, ZIP-архива images или создание проекта .spine через коннектор.", "connectorTitle": "Справка по коннектору Spine", "connectorIntro": "Коннектор передаёт созданные на веб-странице JSON и изображения в установленный и активированный локальный Spine и преобразует их в редактируемый проект .spine.", "prerequisite": "Предварительные требования", "prerequisiteDesc": "Spine должен быть установлен и активирован, а настольная версия коннектора — запущена.", "download": "Скачать", "webSide": "Веб-версия", "webSideDesc": "Когда появится сообщение «Коннектор доступен · Spine готов», нажмите «Экспортировать пакет .spine».", "authorization": "Первая авторизация", "authorizationDesc": "При первом подключении проверьте источник сайта и разрешите доступ один раз; коннектор сохранит локальный список разрешённых источников.", "pathSetup": "Путь к приложению", "pathSetupDesc": "Коннектор автоматически находит Spine. Если поиск не удался, укажите путь к приложению вручную.", "downloadResult": "Результат загрузки", "downloadResultDesc": "ZIP-архив содержит проект .spine и папку с изображениями.", "version": "Версия", "versionDesc": "Коннектор автоматически сопоставляет версию JSON с Spine 3.8–4.3.", "security": "Безопасность", "securityDesc": "Коннектор прослушивает только локальный адрес, хранит авторизацию и удаляет временные файлы после преобразования.", "differenceTitle": "Чем конфигурация отличается от экспорта?", "differenceDesc": "«Сохранить конфигурацию» сохраняет все объекты и параметры для дальнейшего редактирования. «Экспорт Spine JSON» включает только видимые системы частиц и запекает столкновения, следование, шлейфы и дочерние эмиттеры в данные отдельных анимаций." }, "errors": { "confirmLoopFollowEnter": "При включении циклического потока следование частиц будет отключено, его настройки сброшены, а кадры прогрева перестанут действовать. Продолжить?", "confirmLoopFollowExit": "При выходе из циклического потока следование частиц будет отключено и его настройки сброшены. Продолжить?", "invalidJson": "Файл конфигурации не является корректным JSON", "invalidConfigFormat": "Это не файл конфигурации редактора SpineParticle", "unsupportedConfigVersion": "Неподдерживаемая версия конфигурации: {version}", "missingScene": "В файле конфигурации отсутствуют полные данные сцены", "missingEmbeddedSpine": "Конфигурация не содержит встроенных исходных ресурсов Spine для повторного использования", "chooseJsonConfig": "Выберите файл конфигурации .json", "settingsInvalidJson": "Кэш системных настроек не является корректным JSON", "settingsFormat": "Это не кэш системных настроек SpineParticle", "settingsVersion": "Неподдерживаемая версия системных настроек: {version}", "settingsMissing": "В кэше отсутствует раздел настроек settings", "noExportableImages": "У видимых систем частиц нет изображений для экспорта", "invalidZipPath": "Недопустимый путь в ZIP-файле", "spineFileType": "Данные Spine должны иметь расширение .json или .skel", "atlasFileType": "Файлы атласа должны иметь расширение .atlas", "chooseTexture": "Выберите хотя бы одно изображение текстуры", "binaryParseFailed": "Не удалось разобрать двоичные данные Spine (4.3: {v43}; старая версия: {v42})", "invalidSpineJson": "Недопустимый формат Spine JSON", "unsupportedSpineJsonVersion": "Неподдерживаемая версия Spine JSON. Поддерживаются версии: {versions}", "unsupportedSpineDataVersion": "Неподдерживаемая версия данных Spine. Поддерживаются версии: {versions}", "embeddedReadFailed": "Не удалось прочитать встроенный файл Spine: {name}", "missingImageWarning": "Изображение «{file}» отсутствует или имеет нечитаемые размеры. Путь сохранён.", "missingTrailImageWarning": "Изображение шлейфа «{file}» отсутствует. Путь сохранён.", "emptyCacheWarning": "Для «{name}» нет кэша запечённых кадров.", "readExportImageFailed": "Не удалось прочитать изображение для экспорта: {name}", "connectorOffline": "Локальный коннектор Spine не обнаружен. Сначала запустите коннектор.", "connectorHttpError": "Коннектор Spine вернул ошибку HTTP {status}", "invalidTrailUV": "Сетка шлейфа «{name}» содержит недопустимые UV-координаты", "missingTrailVertices": "В сетке шлейфа «{name}» отсутствуют данные вершин", "trailIndexOutOfRange": "Индекс треугольника сетки шлейфа «{name}» выходит за допустимый диапазон", "invalidTrailHull": "Недопустимое количество граничных вершин сетки шлейфа «{name}»", "trailHullIndexOutOfRange": "Индекс граничного ребра сетки шлейфа «{name}» выходит за допустимый диапазон", "invalidInfluenceCount": "Сетка шлейфа «{name}» содержит недопустимое количество влияний костей", "missingBoneReference": "Сетка шлейфа «{name}» ссылается на несуществующую кость", "invalidWeight": "Сетка шлейфа «{name}» содержит недопустимые веса", "weightSum": "Сумма весов вершин сетки шлейфа «{name}» не равна 1", "vertexCountMismatch": "Количество вершин сетки шлейфа «{name}» не соответствует количеству UV-координат", "invalidInherit": "Значение inherit «{inherit}» кости «{name}» несовместимо с форматом JSON Spine {version}", "trailBoneParent": "Кость шлейфа «{name}» должна быть прямым дочерним элементом кости системы частиц, а не частью цепочки костей", "trailSlotEmpty": "Взвешенный слот шлейфа «{name}» не может использовать пустое вложение. На этапах отсутствия или смерти установите масштаб соответствующих костей равным нулю.", "spine38Version": "Версия экспорта Spine 3.8 должна быть указана как 3.8", "spine38Inherit": "Кость «{name}» в Spine 3.8 должна использовать transform вместо inherit", "spine38SlotColor": "Временные шкалы цвета слота Spine 3.8 должны использовать color / twoColor", "spine38AttachmentName": "Скрытые кадры временной шкалы вложений Spine 3.8 должны явно записывать name: null", "spine38RotationAngle": "Временные шкалы поворота Spine 3.8 должны использовать angle", "spine38Curve": "Spine 3.8 не поддерживает формат массивов кривых Spine 4.x", "unsupportedExportVersion": "Неподдерживаемая версия экспорта. Поддерживаются версии Spine: {versions}", "exportVersionMismatch": "Несовпадение версии экспорта: задан Spine {expected}, JSON содержит Spine {actual}", "exportMissingBones": "В результате экспорта отсутствуют кости", "missingAtlasTexture": "Текстура, на которую ссылается Atlas, не выбрана: {name}" } }