The Sims 2 Создание своей коробки поз

AdeLana

Завсегдатай
Сообщения
1.005
Достижения
755
Награды
661
0.jpg

В уроке описано как сделать коробку поз.

Автор урока: AdeLana
Автор иллюстраций: AdeLana

Вам понадобятся:

- SimPE (последняя версия)
- AniMesh Exporter
плагины, распакуйте их в папку, куда установлена программа Милкшейп
- Body Animation Base Meshes тело сима и скелет
- Milkshape v1.8.0 или выше
- Любой графический редактор
- Базовые знания работы в программах

Спойлер
Я иногда делаю одежду для симов и чтоб представить её на скриншотах более выгодно, приходится искать "коробки поз" с подходящими позами для фотографирования. Многие на первый взгляд красивые позы, коробят одежду и далеко не на всех позах можно показать нужные детали. И вот недавно я задалась целью создать собственные позы для симов. Возможно я и не стану великим создателем "коробок поз", однако у меня кое-что получилось и я хочу поделиться этими знаниями с теми, кто захочет заняться созданием своих коробочек ;)

Из-за разницы в русской и английской версии SimPe некоторые термины и названия могут быть разными, я уточняю для тех кто ещё не привык работать с программой
Resource List - Список Ресурсов
Resource Tree - Дерево Ресурсов
Commit - Ввести

Плюс некоторые сокращения
ПКМ - правая кнопка мышки
ЛКМ - левая кнопка мышки

1 Создаём позу
a загружаем мэш - запустите программу MilkShape. Нажимаем File -> Open, найдите симовские тела, которые скачивали. Нам нужно AFanimBase - будем работать с женским телом (если тело выделено красным цветом то просто кликните в любом сером окне на пустое пространство), выделение сбросится и меш станет белым.



Небольшое отступление!
Если вы работаете в milkshape впервые, то при загрузке модели у вас может появиться такая картина
2.jpg
Это суставы скелета для анимации.
Нажмите File, затем Preferences. Далее убедитесь, что вы находитесь во вкладке Misc, в отделе Joint Size установите вместо 1.000000 число 0.011000 и далее ОК.

3.jpg
Если скелет не отображается совсем, то включаем его отображение в правом меню, в разделе Joints - галочка Show Skeleton и настраиваем как описано выше. После настройки отключите скелет, он нам пока не понадобится.

b настраиваем Milkshape для создания анимаций - нам нужно, чтобы скелет стал видимым. Если вы уже видите скелет голубого цвета, всё впорядке. Если нет, то кликните на вкладку Joints в правом рабочем окне, затем выберите Show Skeleton - теперь вы увидите такой скелет, как показано



Выберите в верхнем меню вкладку Window , в выпадающем меню в самом низу отметьте галочкой Show Keyframer. Снизу возникнет небольшое поле. Нажмите кнопку ANIM.
Теперь зайдите во вкладку Model (в правом рабочем меню), нажмите кнопку Select и ниже выберите Joint - просто кликните на кнопку.



c создаём анимацию (позу) - мы будем работать в правом меню, кнопками Select - выделить,
Rotate - вращать, будем изменяя положение Joint-ов создавать позу.

Joint – суставы, на скелете это маленькие шарики, при выделении окрашивается красным цветом. Нужно выделить один сустав от которого будет начинаться движение (выделяем только один сустав, иначе поза может сломать фигуру). Я выделила плечевой сустав, чтоб изменить положение руки



Теперь в правом меню, во вкладке Model нажимаем Rotate. Этот инструмент вращает ту часть скелета, которая выделена зелёным цветом. В моём случае это рука. В каждом окне проекции вы можете изменить положение руки в разном направлении. Опции вращения - выбираем первое (по умолчанию)
Centr Of Mass - вращение от середины объекта (отмечено по умолчанию)
Origin - вращение от нуля оси (пересечение вех осей)
User Point - вращение от места, в которое вы кликните мышкой

Не большое отступление!

Вы увидите, что не только скелет, связанный с суставом, который мы выбрали, стал зеленым, но и части ниже! Почему скелет окрашивается зеленым внизу, а не наверху? Потому что скелет кости построен по иерархии. Каждая кость, связанна с другой и является "ребенком" предыдущей кости. Если предыдущая кость перемещена, шаги связанных с нею костей синхронно переместятся.

Таким образом, выделяя очередной сустав (предварительно сняв выделение с первого), создаёте красивую позу.
При глобальном вращении (Global), мэш иногда будет "расти", так же могут происходить другие странности в меше. Вы можете переключиться на локальное вращение (Local).

7.jpg
[/URL]

Вы можете работать над всеми суставами, пока не придете к желаемой позе, однако запомните: никогда не двигайте сустав AUSKEL JOINT!
Если вам не понравился поворот или вся поза, можно откатить назад нажав сочетание кнопок Ctrl+Z, столько раз сколько шагов нужно удалить.



d суставы root_trans и root_rot - это два очень важных сустава - они контролируют глобальное движение сима.

9.jpg


Root_Trans и Move позволяет вам передвигать мэш по кругу, вперед, назад, вверх и вниз
Root_rot и Rotate позволяет вам вращать весь скелет целиком



---------------------------



Я не мастер, создавать позы, по этому сделала простенькую, чтоб только продемонстрировать в уроке.

e определяем ключевой кадр - после того, как создана желаемая поза нужно её сохранить. Кликаем на Edit -> Select All, всё тело станет красным. Далее жмём Animate ->Set Keyframe, и скелет окрасится в желтый.



f экспортируем анимацию (позу) - идём в File -> Export и ищем формат для экспорта анимации Sims2 AniMesh ANIM Exporter V1.0.1.



Даём название вашей анимации, нужно назвать ваш файл правильно, чтобы игра могла его прочесть.
Не знаю на сколько это важно, но в процессе изучения материалов и чужих анимаций, выяснила, что анимация должна начинаться с a-, затем можно прописать своё уникальное название. Из символов можете использовать только дефис "-" , нельзя набирать пробелы или что-либо еще.
Пример: a-adelana-001-pose01
а - adult,
adelana - имя автора,
001 - коробка поз по счёту (у меня первая),
pose01 - первая поза (когда создадите другие позы для этой коробки, назовёте её pose02, pose03 и т.д.)

После нажатия Сохранить, появится окно, в нём нужно выставить такие настройки (ANIM Type выбрать - Body Overlay, а Locomotion Type выбрать - pose). Жмите Export.



ВАЖНО!
После того, как вы сохраните позу её уже нельзя будет загрузить в Милкшейп и исправить или изменить, а такое часто бывает необходимо, после просмотра позы непосредственно в игре. Немного не правильно расположена рука или нога не достаёт до пола, в общем создавать заново всю позу из-за недочётов очень хлопотно! По этому прежде чем закрыть программу мы сохраним свою позу в правильном формате.
Для дальнейшего использования готовой позы нам нужно сохранить её в формате MS3D (MilkShape 3D ASCII...), предварительно сняв выделение и отключив кнопку Анимации внизу окна программы.
15.jpg


15_1.jpg


16.jpg
В дальнейшем можно будет импортировать через этот же формат свою позу в Milkshape и отредактировав её, сохранить как описано выше в формате .5an с тем же названием, как и раньше. А потом заменить в пакадже анимаций кликнув на строчку нужной позы ПКМ и выбрать Заменить.

2 Создание пакаджа анимации
Запускаем SimPe, нужно создать новый файл Файл -> Создать

17.jpg


В правом окне (Resource List), нажимаем правой кнопкой мыши (ПКМ) и в выпадающем меню выбираем «Add...», указываем путь к папке с сохранённой позе, в нижней части жмите All Files и выбираете свою позу (Я создала несколько поз, а у вас может быть пока только одна. Позже вы сможете добавить любое количество поз в свой файл)



Мы увидим такую картину

19.jpg


В правом окне (Resource List), выделяем первую строку -

переходим в нижней части программы в раздел Resource. В строке Тип (Type) выбираем Animation Resource, затем в строке Группа (Group) ставим значение 0x1C0532FA, жмём Ввод.



Далее в нижней части программы выбираем Plugin View, встаём снова на нужную строку в окне Resource List и нажимаем fix TGI, жмём Ввести и ОК. Вы увидите, что название строки приобрело понятное название, данное вами одной из анимаций (поз).



Все предыдущие шаги проделать с каждой строкой (анимацией). Сохранить пакадж Файл -> Сохранить как, дайте название своему пакаджу с анимацией (я назвала AdeLana-001-posebox_anim)



3 Создание пакаджа коробки поз
Закройте в SimPe файл который мы создали выше. Перейдите в окно Object Workshop, и нажмите кнопку Начать



Ждём пока загрузятся все предметы игры. Найдите категорию Неизвестное (Unknown) - выберите её. Нажмите клавишу 'P' (на английской раскладке) на клавиатуре, чтобы быстро найти нужный предмет. Вас "выкинет" к предметам на нужную букву, ищите объект под названием "Paul's Reaction Test Object". Этот объект для нас самый подходящий.

Небольшое отступление!
Если в каталоге вы не можете найти нужный предмет, возможно он находится в скрытых. Вам нужно включить просмотр скрытых предметов:
зайдите в верхнем меню в Дополнительно -> Параметры, в открывшемся окне выберите раздел Настройки SimPe, поставьте галочку в строке Расширенный режим, нажмите внизу ОК, Перезагрузите программу.


- выберите наш Paul's Reaction Test Object в каталоге кликнув на него
- дальше вверху жмёте на кнопку Далее
- в выпадающем меню выбираете Клонировать,
- проверьте галочки в настройках клонирования (снять только две последние, остальные отметить)
- жмите Старт
ждём пока создастся наш файл

26.jpg




В окне Scenegraph Rename Wizard дадим новое уникальное имя (при переименовании объекта не используйте нижнее подчеркивание "_" и пробелы), потом жмите Update и ОK.

28.jpg


После этого программа предложит вам сохранить свой пакадж в удобное место, дайте своей коробке поз понятное, уникальное название (я назвала AdeLana-001-posebox).

4 Очищаем свой пакадж коробки от лишнего
a В Resource Tree выбираем ресурс Text List и переходим в правое окно (Resource List), нам нужно удалить строки
- MakeActionString prim string set
- Dialog prim string set
- Attributes

кликаем правой кнопкой мыши и выбираем Delete. Строки станут зачёркнутыми



b В Resource Tree выбираем ресурс Pie Menu Strings и переходим в правое окно (Resource List), выбираем [Pie Menu Strings]. В нижнем окне просмотра плагина (Plugin View) откроется панель PJSE: Text List Editor. Нам нужно удалить все строки кроме первой, для этого жмите на строку, а потом кнопку Delete, до тех пор, пока в списке не останется только строка 0х0000. Жмём на Default lang only, затем на Commit File.



с В Resource Tree выбираем ресурс Pie Menu Functions и переходим в правое окно (Resource List), выбираем Reaction Test Interaction Table. В нижнем окне просмотра плагина (Plugin View) откроется панель PJSE: file type Editor. Нужно удалить строки в квадратных скобках, все кроме первой, кликните на строку и потом кнопку Delete,до тех пор, пока в списке не останется только строка 0x0 (0): Set Flags. Жмём на Commit File.



d В Resource Tree выбираем ресурс Behaviour Function и переходим в правое окно (Resource List) и удаляем все строки кроме
- Function – Main
- Function – Init

кликаем правой кнопкой мыши и выбираем Delete. Строки станут зачёркнутыми.



5 Вносим пакадж коробки свои параметры
а В Resource Tree выбираем ресурс Object Data и переходим в правое окно (Resource List), выбираем единственную строку Reaction Test. В Catalog Sort выбираем где в каталоге покупок будет находиться ваша коробка -
- в Room Sort отмечаем галочкой Study, а в Function Sort отмечаем Hobbies
- в Overall Sort отмечаем Hobbies / Miscellaneous
Теперь нужно получить новый GUID. Жмём на кнопку get GUID, в появившемся окне змените имя на что-нибудь уникальное, затем нажмите Register Object (если вы раньше не использовали SimPE для создания объектов, нужно зарегистрироваться - кликните на register new user и следуйте инструкциям).
Теперь кликните Update, потом Commit. Можно сохранить пакадж Файл -> Схранить.



b В Resource Tree выбираем ресурс Text List и переходим в правое окно (Resource List)
- выбираем Anims – Adult
- в окне String вписываем название анимации (именно так как она прописана у вас в пакадже с анимацией) - a-adelana-001-pose01
- жмём кнопку add и в появившейся строке, в окне String вводим следующее название. Добавляем столько строк, сколько у вас добавлено анимаций (поз) в пакадж анимаций.
- когда добавили все анимации, жмём Commit File



с В Resource Tree выбираем ресурс Pie Menu Strings и переходим в правое окно (Resource List),
- выбираем [Pie Menu Strings]
- в окне String вписываем Pose 1.../Start (вы можете написать в начале строки что вам нравиться, но должны обязательно написать в конце .../Start)
- жмём кнопку add и в появившейся строке, в окне String вписываем Pose 1.../Stop
- для каждой анимации (позы) у вас должна быть строка Старт и Стоп!!!
- вы можете сделать строку Snap reset, обычно такая кнопка в игре отменяет любую анимацию
- жмём на Commit File



Итак, это мы сделали кнопки для меню в игре, теперь нам нужно прописать анимацию в свою коробку и привязать её к кнопкам.

d В Resource Tree выбираем ресурс Behaviour Function и переходим в правое окно (Resource List)
- нажимаем на Function – Init правой кнопкой мыши (ПКМ) и выбираем Clone, клонированная строка станет выделена курсивом
- выбираем клон и переходим в нижнее окно в Plugin View
- в окно Filename вводим через пробел (у меня Start - pose1 -a-adelana-001-pose01)
* Start - действие
* pose1 - номер позы по счёту
*-a-adelana-001-pose01 - название анимации



- в нижнем меню выбираем Resource. В строке Instance (экземпляр) стоит порядковый номер 0x00001000, нам нужно изменить его на следующий по порядку, НО! которого ещё нет в Instance (экземплярах). Смотрим все номера экземпляров и изменяем на тот, которого ещё нет



- возвращаемся в Plugin View, мы видим две строки



- выберите первую и в таблице справа введите данные как ниже на фото, измените в окне OpCode на 0x0002 и нажмите Commit File

39.jpg


- выберите вторую строку и в таблице справа введите данные как ниже на фото, измените в окне OpCode на 0x006B и нажмите Commit File

40.jpg


данные этой таблицы отвечают за количество поз в вашей коробке, выделенное число должно соответствовать последним двум числам анимаций в Text List - Anims – Adult. Это первая анимация и соответственно числа поставим 00, в следующей будет 01, 02, 03 и т.д.


- переходим в верхнее окно Resource List, встаём на созданную и только что отредактированную строку, жмём ПКМ и выбираем Clone (тоесть клонируем эту строку).
- в окне Filename меняем название на Stop - pose1 -a-adelana-001-pose01 (у вас будет своё название)
- в нижнем меню выбираем Resource. В строке Instance (экземпляр) изменим номер на следующий по порядку ( у нас это 1003), жмём ввод.

42.jpg


- возвращаемся в Plugin View, удаляем первую строку



- переходим в оставшуюся строку в таблице справа введите данные как ниже на фото, измените в окне OpCode на 0x006C и нажмите Commit File

44.jpg


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

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

- если вы в Pie Menu Strings делали строку Snap reset, клонируете ещё раз Function – Init, в окне Filename вводите Snap reset удаляете верхнюю строку, в таблице справа введите данные как ниже на фото, измените в окне OpCode на 0x002E и нажмите Commit File

45.jpg


вот что примерно должно у вас получиться

е В Resource Tree выбираем ресурс Pie Menu Functions и переходим в правое окно (Resource List)
- выбираем Reaction Test Interaction Table
- смотрим нижнее окно редактирования, отметьте галочками в полях Flags и Flags2, как у меня на фото



- обратите внимание на то, что оставленная нами строка 0x0 (0): Set Flags, изменила название на 0x0 (0): Pose1.../Start
- напротив строки Guardian BHAV в окошке вместо 0x1026 введите число 0x0000
- выше в строке Action BHAV рядом с окошком числа 0x1027, нажмите чёрную стрелочку,



- в открывшемся окне выбираетм 0x1002 Start - pose1 - a-adelana-001-pose01 (у вас разумеется своё название:)), внизу жмём кнопку Okay. Первая строка готова!

49.jpg


- находясь на первой строке, жмём кнопку Add, ниже появляется вторая строка, на которой теперь находимся мы, она выделена синим цветом. Её мы редактируем как и первую, теперь кликнув на чёрную стрелочку выбираем в открывшемся окне 0x1003 Stop - pose1 -a-adelana-001-pose01. И чуть выше в строке Pie String ID выберите из раскрывшегося меню 0x1 (1): Pose1.../Stop.
Теперь мы связали нашу анимацию, кнопку меню и поведение функции вмесе!



Все выше описанные шаги проделайте столько раз, сколько необходимо по количеству анимаций. Далее жмём Commit File.
Вот что примерно у вас должно получиться -


f В Resource Tree выбираем ресурс Catalog Description и переходим в правое окно (Resource List)
- выбираем единственную строку
- в нижнем окне в Strings, вписываем то, что будет видно в игре при выборе в Каталоге покупок. Жмём Commit File.



6 Изменяем "обложку" для коробки
- Создаём в любом изображение размером 128х128 или 256х256
- рисуем, заливаем, пишем всё что вам хочется, это будет "лицо" вашей коробки
- сохраняем в формате .png



- В Resource Tree выбираем ресурс Texture Image и переходим в правое окно, выбираем единственную строку и переходим в нихнее окно просмотра
- жмём на саму картинку ПКМ, в появившемся окошке выбираем строку Build DXT...,

54.jpg


- в следующем окне выбираете формат, жмёте кнопку open... и ищите путь к папке с картинкой, открываете, жмёте Build

55.jpg


- затем Commit. Можете сохранить пакадж Файл -> Сохранить



Ну что же, мы с успехом проделали весь этот тяжкий труд! Теперь можете перенести свои два пакадж-файла в папку Downloads и проверить в игре работоспособность поз.
 

TheCatLady

Проверенный
Сообщения
34
Достижения
140
Награды
3
Надеюсь, здесь можно оставлять комментарии. Честно говоря, немного была в шоке от того, что кто-то еще помнит этот способ создания коробки поз. У меня нет какой-либо цели обидеть автора (AdeLana, как бы там не было - спасибо за урок), но сейчас есть уже способ гораздо легче, и он рабочий, в отличии от этого старого, он когда - как срабатывает.
 

jilyfan

Проверенный
Сообщения
293
Достижения
280
Награды
211
Надеюсь, здесь можно оставлять комментарии. Честно говоря, немного была в шоке от того, что кто-то еще помнит этот способ создания коробки поз. У меня нет какой-либо цели обидеть автора (AdeLana, как бы там не было - спасибо за урок), но сейчас есть уже способ гораздо легче, и он рабочий, в отличии от этого старого, он когда - как срабатывает.
ой, а что за способ? а то я только так ковыряюсь...
 

Pyrotech

Пользователь
Сообщения
1
Достижения
10
Награды
0
Почему в лс? Почему нельзя опубликовать ссылки, если этот способ действительно широко известен?
 

цфукыевнге

Пользователь
Сообщения
1
Достижения
5
Награды
0
Тоже не понимаю, почему нельзя было написать сразу, а не бегать по лс.
 
Верх