big

Над шотом работает команда, и каждый открывает у себя сцены других. Чтобы они открывались без ошибок, договариваемся, где лежат файлы и как их называем.

big
Исходный размер 3840x2020

Папки и имена у всех одни, поэтому чужая сцена открывается без ошибок.

1. Папки и версии

Рабочие сцены лежат в activities, у ассета эта папка может называться как build. Это все нароботки, hip’ы, оттуда никто ничего не берет. В publish лежит то, что отдали другим, условно чтоб положить в лейаут.

big
Исходный размер 3840x2020

1. Ассеты лежат по категории и группе, у коралла это Environment и Corals.
2. В _seq общее для всей секвенции, то есть нескольких шотов в одном месте действия. У нас там окружение, риф и скелет, пустое общее дерево сцены, про него урок 3. Подчеркивание отличает эту папку от папок шотов.
3. У каждого шота своя папка с номерами секвенции и шота.

Исходный размер 3840x2020

USD ROP сцены коралла пишет слой прямо в publish.
1. Output File, куда пишется слой.
2. Сама сцена лежит в build/houdini, номер версии в имени.
3. Версия слоя ‑ это папка.
4. Имя файла во всех версиях одно.

Имена пишем латиницей, большие и маленькие буквы не путаем.

Исходный размер 3840x2020

Сцена лейаута берет чужие слои одной нодой SubLayer, и только из publish.
1. Сама сцена лежит в activities шота, в папке своего отдела.
2. Скелет, окружение и риф из _seq. Скелет стоит первым, он самый слабый, как в уроке 1.
3. Слой камеры, номер версии и в папке, и в имени. У ассета только в папке.

Выпущенную версию не перезаписываем, на нее уже смотрят чужие сцены. Исправление выходит следующей папкой.

Исходный размер 3840x2020

Новая версия ложится рядом со старой. В работу ее берут одной строкой SubLayer, в File меняем v001 на v002, и коралл становится мокрым.

2. Пути внутри файлов USD

Внутри файла USD слои ссылаются друг на друга по путям. USD ROP пишет путь одним из двух способов, на картинке одна ссылка шота записана обоими.

Исходный размер 3840x2020

1. Абсолютный путь ведет на диск одной машины. У напарника папка проекта другая, и файл не найдется.
2. Относительный путь считается от папки, где лежит сам файл. ./ значит эта же папка, ./ на одну папку вверх, на картинке на три.

Относительные пути USD ROP пишет сам, в его Output Processing по умолчанию стоит Use Relative Paths. Ее не убираем.

В файле USD путь считается от самого файла, поэтому проект открывается у любого, куда бы его ни положили.

3. Практическое задание

Задача. Разложить по шаблону свой проект, в нем 3 ассета, 1 секвенция и 2 шота. Шаблон берем из учебного проекта и переименовываем папки под себя. Потом проверяем пути. Без напарника другую машину заменит копия. Копируем учебный проект в другую папку, а старую переименовываем. В новой сцене нодой SubLayer открываем файл шота sq010_sh0010.usda из копии.
Что сдать. Снимок дерева папок своего проекта и снимок дерева сцены с шотом из копии.

Засчитано, если
1. Шот из копии открылся целиком, хотя старая папка переименована.
2. Папки и имена как в шаблоне.
3. В publish нет .hip и рабочих кэшей, только выпущенные файлы.

Исходный размер 3840x2020

Частые ошибки. Слои из нашего файла USD у напарника не подгрузились. В файле абсолютный путь, у USD ROP убрали Use Relative Paths.

Чужая сцена сломалась после правки в нашей рабочей сцене. Она брала файл из activities, а брать можно только из publish.

Проект разложен по шаблону и открывается на любой машине. Дальше договоримся, кто в какую ветку сцены пишет.