Суббота, 23 Ноября 2024, 23:53

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Можно ли согнуть спрайт как во флеше Skew/Shear?
alexsilentДата: Воскресенье, 22 Ноября 2015, 19:47 | Сообщение # 1
почти ветеран
Сейчас нет на сайте
Можно ли согнуть спрайт, как во Флеше с помощью скриптов или с помощью анимации? (Во флеше это вроде называется Skew)
Я заметил можно, если это ребёнок и его родитель претерпевает неравномерные изменения по Scale
(например по Х = 1 а по Y = 0.5, и теперь попробуйте покрутить ребёнка такого родителя, он начнёт искажаться )
Но что если я хочу свободные изменения Skew, как если б делал анимацию во Флеше, из-за этого эффекта, часть анимаций выглядит живее во Флеше,
в отличии от топорной анимации Unity из 2D спрайтов...


Сообщение отредактировал alexsilent - Понедельник, 30 Ноября 2015, 15:28
YellowAfterlifeДата: Воскресенье, 22 Ноября 2015, 21:45 | Сообщение # 2
Сейчас нет на сайте
Насколько мне известно, Unity всё ещё не дает "прямого доступа" к матрицам игровых объектов. Но, с помощью некоторых ухищрений, можно добиться точной симуляции skew\shear с помощью последовательного применения вращений и растяжений. В Unity это будет достигаться несколькими "обёрточными" GameObject для применения каждой из операций.

alexsilentДата: Понедельник, 30 Ноября 2015, 15:27 | Сообщение # 3
почти ветеран
Сейчас нет на сайте
YellowAfterlife, спасибо! Но к сожалению это Love2d и я совсем не понимаю этого кода.
Есть ещё альтернативы кода для Skew Shear?

Добавлено (30 ноября 2015, 15:27)
---------------------------------------------
Нашёл такие отличные видео, но автор этого кода к сожалению не особо делится результатами самого кода, очень хотелось бы узнать код. *_*
Ибо это то что я хотел, сделать лучше качество анимации с 2д спрайтами.





Жаль из меня плохой программист, я больше по части рисования.


Сообщение отредактировал alexsilent - Понедельник, 30 Ноября 2015, 15:28
seamanДата: Понедельник, 30 Ноября 2015, 16:49 | Сообщение # 4
старожил
Сейчас нет на сайте
Можно шейдер написать соответствующий.
Вот обсуждается (не для Юнити) http://www.reedbeta.com/blog/2012/05/26/quadrilateral-interpolation-part-1/
Вот напрямую для Юнити: http://www.sector12games.com/skewshear-vertex-shader/
Тут это делается переопределением отрисовки меша:
http://answers.unity3d.com/questions/1074814/is-it-possible-to-skew-or-shear-ui-elements-in-uni.html
Можно использовать GL для отрисовки объектов и там есть прямой доступ к матрицам трансформации
http://docs.unity3d.com/ScriptReference/GL.html
PS: Для старого ГУИ, кстати тоже был прямой доступ к матрице трансформации.


Сообщение отредактировал seaman - Понедельник, 30 Ноября 2015, 16:54
alexsilentДата: Понедельник, 30 Ноября 2015, 20:47 | Сообщение # 5
почти ветеран
Сейчас нет на сайте
Цитата seaman ()
Вот напрямую для Юнити: http://www.sector12games.com/skewshear-vertex-shader/

seaman, спасибо! Вот это самый лучший способ из всех, однако у него минус, что один материал меняет все спрайты с таким же материалом, попробую рпидумать как это обойти.
RangerДата: Вторник, 01 Декабря 2015, 20:36 | Сообщение # 6
почти ветеран
Сейчас нет на сайте
Не знаю как на флэше.
Но можно просто менять вершины в кваде как заблогарассудится (проклятый интернет) заблагорассудится.




Сообщение отредактировал Ranger - Вторник, 01 Декабря 2015, 20:36
alexsilentДата: Вторник, 01 Декабря 2015, 21:00 | Сообщение # 7
почти ветеран
Сейчас нет на сайте
Цитата Ranger ()
Но можно просто менять вершины в кваде как заблогарассудится (проклятый интернет) заблагорассудится.

Как раз для этих целей, нашел пару интересных плагинов. ДУмаю, это лучше чем скью
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг