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

Здравствуйте, помогите. Уже 2й день пытаюсь запрограммировать спавн пули впереди края ствола. Я высчитал какой должен быть отступ от Transform ствола до Transform пули, допустим он равен 5f. Я хочу чтобы как только я заспавнил пулю и задал ей rotation равным rotation стволу пуля переместилась по направлению ствола на 5f. Я знаю, что что-то похожее можно сделать с помощью Translate(bullet.forward*speed), но тогда пуля начнёт ЛЕТЕТЬ в нужном направлении, а мне нужно чтобы она СДВИНУЛАСЬ на 5f по оси forward.
Пробовал bullet.position += bullet.TransformPoint(new Vector3(0,0,5f), но пуля смещалась по мировым координатам Z, а не по локальным. Надеюсь объяснил более-менее понятно.
  • Вопрос задан
  • 221 просмотр
Решения вопроса 1
Lil_crystal
@Lil_crystal Автор вопроса
Всё, Хабровчане, я понял. Я неправильно использовал TransformPoint(new Vector3 (0,0,5f)). Нужно было его не прибавлять, а присваивать к bullet.position.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы