Jr13San
Модостроитель
- Регистрация
- 1 Апр 2010
- Сообщения
- 449
- Благодарности
- 266
- Баллы
- 230
Часть 1 - Экскурс по исходникам
Прежде чем начать, хотел бы провести небольшой экскурс по тому, как получились исходные файлы для сборки двухместной лавочки.
1) С помощью программы GothicSourcer производится декомпиляция статической модели "BENCH_NW_CITY_01.MDL". В результате чего получаем новый файл "BENCH_NW_CITY_01.ASC".
Используем его для последующего импорта и редактирования.
2) После этого выполняется импорт модели "BENCH_NW_CITY_01.ASC" в 3dsmax c использованием плагинов Kerrax.
3) Затем убираются лишние грани.
4) Выполняется разрез модели пополам с помощью инструмента "Slice", соответственно после выставления плоскости разреза "SlicePlane".
5) Переименовываются позиции посадочных мест.
Теперь и для левой и для правой половинки эти пары стали одинаковыми и называются "ZS_POS0" и "ZS_POS1.
6) Затем при помощи инструмента "Select and Link" все четыре позиции привязываются к модели лавочки. Нужно это для того, чтобы потом при вставке модели, позиции перемещались вместе с ней.
Примечание: В 3dsmax инструмент "Select and Link" можно найти на главной панели инструментов (здесь он выделен жёлтой линией).
7) В таком виде модель сохраняется в формат ".max" для дальнейшей работы с ней.
8) Затем удаляется одна половинка лавочки и в месте с ней соответствующие позиции.
9) После этого выполняется экспорт меша модели, обратно в формат ASC. Обязательным условием при экспорте является правильная привязка позиций к их "родителю". Как видим, родителем является сама модель лавочки "zm_Bench_Nw".
Вторую половинку подготавливаем и экспортируем аналогичным образом, используя уже сохранённый файл из пункта 7.
В итоге получаем два файла для сборки лавочки: "BENCH_LEFT_PART.ASC" и "BENCH_RIGHT_PART.ASC" - левая и правая половина соответственно.
Часть 2 - Сборка элементов в редакторе Spacer II
1) Скачиваем архив "TwoPlace_Bench.rar"(см. во вложении к теме).
В нём содержится два файла: "BENCH_LEFT_PART.ASC" и "BENCH_RIGHT_PART.ASC". Это две половинки бывшей лавочки "BENCH_NW_CITY_01.ASC".
2) Имея в наличие исходные файлы, помещаем их в папку "Gothic II\_work\Data\Anims\".
3) Открываем программу Spacer II, загружаем необходимый ZEN для редактирования и находим в нём место для размещения новой двухместной лавочки.
4) Определившись с местом, переходим в окно "Objects" и по очереди разворачиваем древо классов, добираясь до интерактивных объектов, следующим образом:
oCVob (abstract) -> oCMOB -> oCMobInter
5) Теперь, для того, чтобы вставить выбранный объект, нажимаем правой кнопкой мыши в окне программы Spacer II и выбираем функцию "Insert [oCMobInter]", как показано на рисунке 1.
Рисунок 1 - Вставка "первого" интерактивного объекта
vobName: TP_BENCH_L
visual: BENCH_LEFT_PART.ASC
(Остальные свойства оставляем по умолчанию).
Небольшие пояснения к обозначениям:
TP_BENCH_L = TWOPLACE_BENCH_LEFT = ДВУХМЕСТНАЯ_ЛАВОЧКА_ЛЕВАЯ
BENCH_LEFT_PART = ЛАВОЧКА_ЛЕВАЯ_ЧАСТЬ
Чтобы изменения вступили в силу, необходимо нажать кнопку "Apply"(Применить).
Рисунок 2 - Визуализация левой части лавочки
7) Итак, левая половинка лавочки готова, теперь переходим к правой.
Правую половинку лучше вставить как потомка от левой, чтобы потом можно было перемещать обе половинки, хватаясь только за левую часть.
В окне "Objects" переходим на вкладку "Create". Если здесь древо классов не активно, нажимаем кнопку Activate.
Затем нажимаем правой кнопкой мыши на левую половинку лавочки и из открывшегося меню выбираем
"Insert [oCMobInter] as child of "TP_BENCH_L"", как показано на рисунке 3.
Рисунок 3 - Вставка "второго" интерактивного объекта
8) Присваиваем вставленному объекту следующие свойства:
vobName: TP_BENCH_R
visual: BENCH_RIGHT_PART.ASC
(Остальные свойства оставляем по умолчанию).
Пояснения к обозначениям:
TP_BENCH_R = TWOPLACE_BENCH_RIGHT = ДВУХМЕСТНАЯ_ЛАВОЧКА_ПРАВАЯ
BENCH_RIGHT_PART = ЛАВОЧКА_ПРАВАЯ_ЧАСТЬ
И снова нажимаем кнопку "Apply"(Применить).
Рисунок 4 - Визуализация правой части лавочки
9) Всё, теперь можно перемещать лавочку целиком, взявшись за левую половинку "TP_BENCH_L" и устанавливать её на место.
После того, как лавочка будет окончательно установлена в нужное место, вам необходимо изменить ей следующие свойства:
cdDyn: TRUE
staticVob: TRUE
И нажать кнопку "Apply"(Применить).
Внимание: Иногда свойства могут не примениться к объекту с первого раза, поэтому нужно перепроверить их ещё раз, выделив сначала любой другой объект, а затем снова нужный нам.
Если свойства объекта в порядке, то переходим дальше.
Проверьте обе половинки таким образом и в случае необходимости переназначьте свойства объекта заново. И не забывайте нажимать кнопку "Apply"(Применить).
10) Если всё в порядке, то сохраняем редактируемый ZEN. И только после этого можно эксплуатировать лавочку.
И ещё, важно, когда будете вставлять объекты, обзор камеры не меняйте и никуда ей не перемещайтесь, тогда обе половинки лавочки состыкуются правильно, потому что Pivot у них будет в одной точке.
Дополнение к статье
Если собранную лавочку сохранить в отдельный файл, так называемый "Vobtree", то потом её легко можно будет вставлять куда вам угодно, причём в таком же собранном виде.
Сохранение визуальных объектов.
Работаем в редакторе Spacer II. И для начала определимся со свойствами обоих половинок нашей лавочки.
Итак, для того, чтобы после вставки мы могли беспрепятственно перемещать их в любое место, необходимо изменить у них следующие свойства:
cdStatic: FALSE
cdDyn: FALSE
staticVob: FALSE
Эти свойства отвечают за обработку столкновений объектов. Сейчас мы выключили эту обработку.
После изменения свойств не забывайте применять их к выделенному объекту, нажимая кнопку "Apply" в окне "Objects".
Если все свойства установлены, то выделяем левую половинку лавочки и нажимаем на неё правой кнопкой мыши и в открывшемся меню выбираем Vob->SaveVobtree...
Примечание: Выделяем именно левую половинку, потому что она является родителем для правой половинки, поэтому при сохранении она захватит с собой своего потомка. Если же сохранять правую половинку таким образом, то сохранится только правая. Отсюда скорей всего и называется "Vobtree", то есть древо, в котором присутствуют родственные связи родителя со своими потомками.
Далее вписываем имя сохраняемого файла, например, "TWO_PLACE_BENCH". А в качестве папки для сохранения файла можно использовать "Gothic II\_work\Data\Presets\". И нажимаем кнопку "Сохранить". Теперь сохранённое древо объектов готово к эксплуатации.
Вставка визуальных объектов
В окне программы Spacer II нажимаем правой кнопкой мыши и из открывшегося меню выбираем
Vob->InsertVobtree...
В проводнике находим наш ранее сохранённый файл:
"Gothic II\_work\Data\Presets\TWO_PLACE_BENCH.ZEN" и нажимаем кнопку "Открыть".
Лавочка вставлена. Теперь можете перемещать её в нужное место, хватаясь за левую половинку, которая как раз и должна быть выделена после вставки.
Установив лавочку в нужное место, не забудьте включить обработку столкновений:
cdDyn: TRUE
staticVob: TRUE
На этом туториал закончен.
Вложения
Последнее редактирование модератором: