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

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Как при смене transform объекта не менять положение детей?
GoganoidДата: Вторник, 13 Февраля 2018, 11:20 | Сообщение # 1
был не раз
Сейчас нет на сайте
Unity2D. Делаю пистолет. У пистолета есть FirePoint и он находится около дула, но когда игрок подбирает пистолет, transform пистолета равен transform игрока. Но есть одна проблема. transform FirePoint`а тоже равен transform игрока. Как сделать чтобы FirePoint не менял сове местоположение относительно пистолета?

https://drive.google.com/open?id=13lrM5ADoa2XyPvjLqPzganr3z_eFgCH3
https://drive.google.com/open?id=1MwO9s4FmvUuCRKt_vdw8kdoPBTmwZW6A
Вот код смены трансформа:
public GameObject target;
public Vector3 Pos;
void Update()
{
transform.position = target.transform.position + Pos; //Pos делает так, чтобы пистолет не торчал прямо из игрока(может есть какой-то не костыльный способ?)

gunsprite.flipX = charactersprite.flipX;
if (gunsprite.flipX == true)
{

Pos = new Vector3(-0.5F, Pos.y, Pos.z);//Примерно то же самое что и Pos
}
else
{

Pos = new Vector3(0.7F, Pos.y, Pos.z);
}
}
defGMDefeloperДата: Вторник, 13 Февраля 2018, 14:07 | Сообщение # 2
частый гость
Сейчас нет на сайте
Сделать FirePoint дочерним к пистолету...

Добавлено (13 Февраля 2018, 14:07)
---------------------------------------------
Цитата
может есть какой-то не костыльный способ?


Сделать обьект AttachPos и прекрипить к нему пистолет.Игроку сделать обьект Hand и прикрепить к нему AttachPos.

Если есть желание,можно все написать кодом,но для этого нужно мучаться с векторами,как по мне , пусть это делает движок.


Сообщение отредактировал defGMDefeloper - Вторник, 13 Февраля 2018, 14:15
  • Страница 1 из 1
  • 1
Поиск:

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