3d форум по Blender

Blender => Вопросы от новичков => Тема начата: TheGuy от 02 Марта 2018, 23:08:50

Название: Анимация овального глаза с помощью Lattice и экспорт.
Отправлено: TheGuy от 02 Марта 2018, 23:08:50
Добрый вечер,
я новичек в Блендере и на форуме, поэтому извините за ранее, если что не так спрашиваю  ;D
Моя проблема заключается в следующем:
я создал овальный глаз и хочу чтобы он не терял при ротации свою форму. Я нашел интересный гайд, где это реализовано с помощью Lattice modifier. Вот ссылка видео с точки использования Lattice: https://youtu.be/OItHr4VRP7M?t=14m38s

Все замечательно работает, но когда я экспортирую мою анимацию в  игровой движок Unity 3D, то анимация работает не корректно, тоесть еффекта от Lattice нет, что собственно не удевительно, ведь этот modifier существует только в Blender.

Поэтому надо как то избавиться от  Lattice, но при этом оставить на Меше его еффект. Я начал гуглить и нашел тему с такой же проблемой:
https://forum.unity.com/threads/how-can-i-animate-oval-shaped-eyes-blender-to-unity.455147/

Как я с моим кривым английским понял  :'( нужно создать Shape Keys и потом для каждого Shape Key создать клона объекта. Потом можно удалить Lattice с мейн объекта и запечь результат Shape Key с клона на мейн объект. Для меня эта идея подходит, создал бы Shape Keys с ротацией во все 4 стороны и анимировал, подумал я. Но тут-то и начинается проблема. Я не понимаю как создать мне Shape Key объекта с помощью арматуры и костей через pose mode? Если я использую armature deform, то lattice не работает вообще.  Если я делаю как в видео гайде кость парентом обьекта, тогда работает Lattice, но при ротации объекта с помощью кости, Shape Key не работает. Как решить эту проблему?  :'(
Название: Re: Анимация овального глаза с помощью Lattice и экспорт.
Отправлено: Николай Николаев от 03 Марта 2018, 04:21:53
>> я новичек в Блендере и на форуме, поэтому извините за ранее, если что не так спрашиваю
... Приветствую! Это хорошая идея изучать и использовать Blender! Не стесняйся задавать вопросы и если на некоторые из них сразу не получишь ответа, то продолжай искать решение и повторно поднимать тему ;) ...

>> нужно создать Shape Keys и потом для каждого Shape Key создать клона объекта. Потом можно удалить Lattice с мейн объекта и запечь результат Shape Key с клона на мейн объект. Для меня эта идея подходит, создал бы Shape Keys с ротацией во все 4 стороны и анимировал, подумал я.

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

>> Я не понимаю как создать мне Shape Key объекта с помощью арматуры и костей через pose mode?
... поясни где сказано о том чтобы такое сделать ...

>> Как решить эту проблему?  :'(
... посмотри это https://www.youtube.com/watch?v=1Zqy5GhUV-Q
Название: Re: Анимация овального глаза с помощью Lattice и экспорт.
Отправлено: Николай Николаев от 03 Марта 2018, 05:40:29
... в продолжение предыдущего поста ...
1) тебе нужно перенести деформацию сетки модификатором Lattice в ключи формы главного объекта (это было в тех видео, на которые ты ссылался и вроде у тебя это получилось; получилось?) ...

далее несколько комментариев по видео, ссылку на которое дал в предыдущем посте  ...

2) далее нужно в редакторе DopeSheep создать ключи анимации по ключам формы и создать действия в NLA редакторе (4:12 видео, умеешь?) ...
3) далее нужно в NLA редакторе совместь по времени действия от арматурной анимации и действия от анимации по ключам формы (7:12 видео, умеешь?) ...
4) когда все действия находятся на своих местах экспортировать fbx (8:51 видео, у это ты умеешь) ...
5) после импорта в юни у тебя будут действия с учетом деформации по ключам формы (9:15 видео) ...

Название: Re: Анимация овального глаза с помощью Lattice и экспорт.
Отправлено: TheGuy от 03 Марта 2018, 12:14:09
Спасибо за ответ!
"1) тебе нужно перенести деформацию сетки модификатором Lattice в ключи формы главного объекта (это было в тех видео, на которые ты ссылался и вроде у тебя это получилось; получилось?) ..."
Нет, как раз это и не получилось и это я и написал в первом посте. В тех видео, которое я прислал, автор этого не делал, он создал просто овальный глаз и все на этом хепи енд.
Почему у меня это не получается?
Когда я пытаюсь создать Shape Key объекта, на котором висит Lattice, то еффект Lattice теряется. В этом моя проблема.

Кстати гайд с птицей я уже видел этот, к нему у меня тоже вопросы есть. Автор создал кости крыльев, но ими вообще не пользуется, тоесть создал ключ сложеных крыльев, но кости так и остались весеть как на базовом ключе меша, правельно ли это вообще? Что если я еще начну двигать костями, у меня тогда Меш крыльев вообще в тело птицы войдет. Да и физика не понятно как будет работать в Юнити с таким способом.

Я создал тестовой файл с анимацией как я хочу.
Название: Re: Анимация овального глаза с помощью Lattice и экспорт.
Отправлено: Николай Николаев от 03 Марта 2018, 13:02:56
>> Когда я пытаюсь создать Shape Key объекта, на котором висит Lattice, то еффект Lattice теряется. В этом моя проблема.
1) у тебя уже есть "оригинальный" объект с модификатором Lattice
2) создаешь его копию без модификатора Lattice, пусть это будет "целевой объект" (можешь переместить его рядом с "оригинальным") ...
3) трансформируешь "оригинальный" объект модификатором Lattice
4) далее последовательно выделяешь через шифт "оригинальный" и "целевой" объекты,
переходишь в редактор свойств активного объекта (а активный у тебя будет последний выделенный, то есть "целевой"),
переходишь на вкладку Data (там где Shape Keys), кликаешь в стеке Shape Keys на (+, Add), добавляется Basic, далее кликаешь на (V, Special) (находится ниже (+)(-)) и выбираешь Join as Shapes, добавляется требуемый ключ формы, который трансформирует "целевой" объект также как Lattice трансформирует "оригинальный", только без этого модификатора ...
(https://blender-manual-i18n.readthedocs.io/ja/latest/_images/Shape_Keys3.jpg)

(https://blender-manual-i18n.readthedocs.io/ja/latest/_images/Shape_Key_Specials2.jpg)

... пробуй сделать этот этап ...
Название: Re: Анимация овального глаза с помощью Lattice и экспорт.
Отправлено: TheGuy от 03 Марта 2018, 18:15:48
Спасибо, наконец-то что-то подобное получается, но все равно если например на 45° на лево ротирую и создаю ключ на целевом объекте, то объект при ротации немного уменьшается в размерах, потом увеличевается снова. От чего это зависит и можно ли как исправить?


ps: Не совсем понимаю как картинки ставить)
https://imgur.com/a/2IZtk
Название: Re: Анимация овального глаза с помощью Lattice и экспорт.
Отправлено: Николай Николаев от 03 Марта 2018, 20:48:02
>> Спасибо, наконец-то что-то подобное получается
... хорошо, то есть теперь ты можешь делать ключи формы на целевом объекте ...
... дальше нужно объяснять? ...

>> но все равно если например на 45° на лево ротирую ...  От чего это зависит и можно ли как исправить?
... по факту у тебя в ключах формы нет ротации, там линейная трансформация положения вершин из одного состояния в другое ...
... в этом причина искажения, то есть вершины идут не по дуге (как при повороте), а по прямой ...
... исправить можно только логикой трансформации, то есть переосмыслить операции анимации ...
... например (хотя это может быть несовсем практичным но у тебя глаза отдельные объекты) анимировать глаза не ключами формы, а костями и экспортировать эту арматурную анимацию в юни ...



Название: Re: Анимация овального глаза с помощью Lattice и экспорт.
Отправлено: TheGuy от 03 Марта 2018, 21:07:33
Спасибо  большое, теперь ясно почему оно так  :)

>>... например (хотя это может быть несовсем практичным но у тебя глаза отдельные объекты) анимировать глаза не ключами формы, а костями и экспортировать эту арматурную анимацию в юни ...

Я так и планировал изначально и в первом посте написал, почему я пришел к Lattice и Shape Keys. А так конечно небыло бы всего этого гемороя)
Мне бы даже подошло если сам глаз овальный на месте находился, а только зрачек двигался бы вокруг овального глаза, но как я понял, для этого тоже нужен Lattice modifier.