Пропы · 3 мин чтения
Как разделить YDR-проп на два (или больше) отдельных пропа
Читать на:: English · Español · Français · Deutsch · Português · Italiano · Polski · Türkçe

Иногда один проп — это на самом деле несколько: стол для пикника с двумя скамьями, письменный стол со стулом, знак на столбе. Чтобы переместить, скрыть или анимировать одну часть отдельно, нужен отдельный проп. Обычный путь — Blender и Sollumz: импорт, разделение, преобразование каждого куска, экспорт каждого со своим .ytyp. Split into parts (разделить на части) в YDR Model Editor делает это в браузере.
Что должно сохраниться при разделении
Проп игры — это больше, чем его видимая модель, и каждая часть должна сохранить свою долю всего этого:
- Его нижние LOD. Модели Medium и Low у пропа — это отдельные, более простые меши, а не копии модели High: в проверенных нами пропах игры ни одна их геометрия не совпадала с High-моделью. Каждая часть получает треугольники нижних LOD, ближайшие к её собственным.
- Его коллизия. Каждый примитив коллизии уходит к ближайшей части; меш коллизии, охватывающий несколько частей, режется полигон за полигоном. Часть, которой не досталось коллизии, получает подогнанную оболочку.
- Его текстуры. Текстуры внутри модели уходят только к частям, которые их используют;
.ytdостаётся как есть, а каждая часть, использующая из него текстуры, указывает его в своём архетипе. - Его положение. При точке опоры оригинала части, размещённые по тем же координатам, воссоздают проп: при чтении из файлов каждый треугольник на месте.
Разделите пошагово
Откройте YDR Model Editor и выберите Split into parts (разделить на части). Перетащите ваш .ydr (с его .ytd) или найдите один из пропов игры.
- Выберите часть в Into part (в часть) или в списке частей. Add a part (добавить часть), до 8.
- Щёлкайте куски, которые должны в неё войти: Click pieces переносит целый кусок, Box и Brush режут один меш, а A click takes берёт кусок или весь его материал. Colour by part показывает, что где, а Pull apart to look раздвигает их, чтобы проверить, что ничего не забыто.
- Назовите каждую часть (никогда именем пропа игры) и выберите её точку опоры: Same origin as the original (та же точка, что у оригинала), чтобы воссоздать проп сборкой вместе, или Centre at its bottom (центр внизу), чтобы поставить каждую отдельно.
- Задайте Resource name (имя ресурса) и Collision (коллизия): The original's, shared out (оригинальная, поделённая между частями) по умолчанию, если у пропа она есть.
- Нажмите Download the N props (.zip) (скачать N пропов, .zip).
Страница перечитывает результат, прежде чем отдать его вам: каждый треугольник в одной части, размер и коллизию каждой части и куда её ставить относительно места оригинала.
Что вы получите
Архив содержит .ydr на каждую часть, один .ytyp для всех, .ytd, который вы перетащили, отчёт и example.lua, который спавнит каждую часть перед вами. В fxmanifest он закомментирован; раскомментируйте, чтобы попробовать:
-- client_script 'example.lua'Затем /<имя> спавнит части, а /<имя>_clear удаляет их.
Ограничения
- Только
.ydr: не.yft(ломаемые пропы), не.yddи не файлы GTA V Enhanced. - Пропы со скелетом больше чем из одной кости и геометрии больше 65 535 вершин отклоняются.
- Части анимированного пропа выходят неподвижными.
- Открытие модели бесплатно, до 60 в день.
Вопросы
- Части всё ещё подходят друг к другу?
- Да, при Same origin as the original: поставленные по координатам и направлению оригинала, все части на своих местах. Это проверяется в файлах, которые пишет инструмент; посмотрите в игре, прежде чем на это полагаться.
- Нужен ли .ytd?
- Только если текстуры не внутри модели. Архетипы частей называют тот же
.ytd, что использовал оригинал, поэтому он попадает в ресурс без изменений.

Инструмент для этого
YDR Model Editor
Перетащите ваш .ydr, разложите его куски по частям и скачайте проп для каждой с её LOD, коллизией, текстурами и .ytyp.
Открыть YDR Model EditorПригодится также: Model Inspector


