2dtookit + scale [-1;1]; Отражение персонажа

Общие вопросы о Unity3D

2dtookit + scale [-1;1]; Отражение персонажа

Сообщение bomberest 15 июн 2013, 18:38

Есть 2д-персонаж через 2dtoolkit, у которого вращается туловище.
Нужно повернуть персонажа в другую сторону, для этого попробовал воспользоваться scale -1 у всего персонажа, но при этом смещаются оси вращения у персонажа, начинается полный бред.
Раньше я делал так: каждую часть персонажа я вращал вокруг главной оси персонажа, при этом способе всё получалось отлично, но это было немного затруднительно делать.
Есть решения получше?
Основы Unity3D Свой 2D-движок Фильм для разработчиков Кастомизация едитора
Лекции игрового программирования
Skype: Andrewf56 | Steam: bomberest (-AnF-) | Vk: _https://vk.com/andrewshut
Аватара пользователя
bomberest
Старожил
 
Сообщения: 538
Зарегистрирован: 22 июн 2011, 14:38
Откуда: Минск
  • ICQ

Re: 2dtookit + scale [-1;1]; Отражение персонажа

Сообщение Acrobat 15 июн 2013, 21:32

У тулкита есть штуки как vflip, hflip. или toolkit используется больше чем спрайтовый менеджер?
Acrobat
UNITрон
 
Сообщения: 182
Зарегистрирован: 08 дек 2011, 16:16
Откуда: г. Нижний Новгород

Re: 2dtookit + scale [-1;1]; Отражение персонажа

Сообщение V0odo0 18 июн 2013, 05:55

С 2d toolkit не знаком, но вот недавно создавал топик с похожим вопросом: viewtopic.php?f=5&t=16613

Во имя производительности для поворота персонажа есть другой способ. С использованием шейдера с параметром CullOff=false (VertexLit blended например) поворачиваем персонажа на 180 градусов, а части тела отражаем по z координате. Если каждая часть тела это слой со своей z координатой, то при повороте на 180 они встанут на свои места.

Синтаксис:
Используется csharp

Pivot.transform.rotation = Quaternion.Euler(0, 180, 0);

foreach (GameObject p in CharParts)
                {
                    p.transform.localPosition = new Vector3(p.transform.localPosition.x, p.transform.localPosition.y, -p.transform.localPosition.z);
                }          

 
[ My Unity Assets ]
[ Voodoo Games ]
Аватара пользователя
V0odo0
UNITрон
 
Сообщения: 202
Зарегистрирован: 25 мар 2011, 16:14
  • ICQ

Re: 2dtookit + scale [-1;1]; Отражение персонажа

Сообщение bomberest 20 июн 2013, 18:40

Voodoo, благодарю за твой совет :) Он просто идеально мне подошёл. Все просто делается и работает быстро. Благодарю, что спас мой мозг, нервы и время :)
Основы Unity3D Свой 2D-движок Фильм для разработчиков Кастомизация едитора
Лекции игрового программирования
Skype: Andrewf56 | Steam: bomberest (-AnF-) | Vk: _https://vk.com/andrewshut
Аватара пользователя
bomberest
Старожил
 
Сообщения: 538
Зарегистрирован: 22 июн 2011, 14:38
Откуда: Минск
  • ICQ


Вернуться в Общие вопросы

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 15