Как при смене transform объекта не менять положение детей?

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

Как при смене transform объекта не менять положение детей?

Сообщение Goganoid126 13 фев 2018, 11:37

Unity2D. Делаю пистолет. У пистолета есть FirePoint и он находится около дула, но когда игрок подбирает пистолет, transform пистолета равен transform игрока. Но есть одна проблема. transform FirePoint`а тоже равен transform игрока. Как сделать чтобы FirePoint не менял сове местоположение относительно пистолета?

https://drive.google.com/open?id=13lrM5 ... r3z_eFgCH3
https://drive.google.com/open?id=1MwO9s ... oPBTmwZW6A
Вот код смены трансформа:
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);
}
}
Goganoid126
UNец
 
Сообщения: 1
Зарегистрирован: 13 фев 2018, 11:35

Re: Как при смене transform объекта не менять положение детей?

Сообщение Leonin 13 фев 2018, 13:46

Почему бы не отвязывать объект от paren'ta и назначать обратно, когда нужно?
Аватара пользователя
Leonin
UNец
 
Сообщения: 44
Зарегистрирован: 12 янв 2018, 16:59

Re: Как при смене transform объекта не менять положение детей?

Сообщение Woolf 13 фев 2018, 20:27

transform.position = target.transform.position + Pos; //Pos делает так, чтобы пистолет не торчал прямо из игрока(может есть какой-то не костыльный способ?)


Есть, конечно.. У игрока назначается точка (пустой GO), куда привязывать пистолед, и при подборе ставите пистолет не в точку игрока, а в эту точку.


но когда игрок подбирает пистолет, transform пистолета равен transform игрока. Но есть одна проблема. transform FirePoint`а тоже равен transform игрока

Странная ситуация.. Есть пистолет, в нем есть свой пустой gameobject, который указывает точку вылета пули. При подборе пистолета, вы ставите его в точку пистолета у игрока, назначая ему parent этой точки. Точка вылета пули остаётся привязанной к пистолету
Разработчик theFisherOnline - там, где клюёт
Разработчик Atom Fishing II - Первая 3D MMO про рыбалку
Разработчик Atom Fishing - Рыбалка на поплавок, донку, нахлыст, блесну в постъядерный период.
Аватара пользователя
Woolf
Адепт
 
Сообщения: 7179
Зарегистрирован: 02 мар 2009, 16:59


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

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 17