Полезное

Мы Вконтакте

Discord канал

#
Пред.
12
Модератор: icms
Аватара пользователя
Пользователь
Сообщения: 90
Всем привет. Столкнулся с 1 интересной проблемой, касательно прицеливания для стрельбы. Дело в том, что для вычисления направления Line Trace я использую начальную точку как сокет оружия, а направления как Forward Vector камеры. Но трабла в том, что камера у персонажа ведь весит на spring arm, а я им динамически управляю и следовательно его Socket Offset меняется. И в итоге снаряд летит левее от центральной точки на экране. Как можно исправить подобное?
Аватара пользователя
Пользователь
Сообщения: 2319
решается математикой...
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 90
Snake писал(а):
решается математикой...

Нет, ну у меня есть 1 мысль, но она по большей части извращенная: на камеру прикрепить пустышку, потом сначала лайн трейсом отследить направление от пустышки до точки куда смотришь, конечный результат это будет конец для другого лайн трейса, которые юзается у оружия. Если первый лайн трейс меньше по расстоянию чем у оружия, то использовать дефолт (на случай если камера например за объектом, а персонаж по другую сторону и все такое), но это извращение. Мб есть способы профитнее, что ли)
Аватара пользователя
Пользователь
Сообщения: 4069
место где есть твой курсор, можно получить координаты в мировом пространстве, это конечная точка, стартовая точка это сокет твоего оружия, находишь угол между стартовй точкой и финальной точкой с помощью FindLookAtRotation запускаешь снаряд. Если курсор смотрит в небо и не возвращает контакта с физическим объектом то просто запускаешь по форвард вектору, я не помню точно какие ноды тебе нужны.
Аватара пользователя
Пользователь
Сообщения: 2319
Изображение
в итоге
два вектора - направление камеры, и направление оружия
третий вектор старт трейса, чтоб из-за спины не начинать трейс
один раз трейсим по вектору камеры, - получаем хит позицию
находим угол поправки из этих уже 4 векторов.
поправляем положение оружия(или направление выстрела) на заданный угол
стрелям
профит.
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 2319
Prytaleks, угу все верно...
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 90
Хорошо, а для аиминга можно подобные махинации провернуть? Ну что бы заставить персонажа аимиться в нужную точку.
Аватара пользователя
Пользователь
Сообщения: 2319
Цитата:
а для аиминга можно подобные махинации провернуть?

просто для самого прицеливания(визуального) трейсить нужно каждый тик (хотя могут быть варианты... с фиксированными отрезками времени),
а не только в момент выстрела...
и если такой трейс будет только на одном персонаже то это совсем не затратно.
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 4069
Kayaba Akihiko писал(а):
Хорошо, а для аиминга можно подобные махинации провернуть? Ну что бы заставить персонажа аимиться в нужную точку.


у меня получалось аимить ботов с помощью SetControlRotatoin + FindLookAtRotation

GetHitResultUnderCursor(там их вроде парочка chanel и object, тебе нужен по идее обжект) вроде так нода называется из которой можно получить координаты в мировом пространстве для курсора.
Аватара пользователя
Пользователь
Сообщения: 4069
Snake писал(а):
Prytaleks, угу все верно...


как приятно это от тебя слышать))

p.s. Снэйк, загляни в ЛС пожалуйста


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

UEngine.ru © 2017
Все права защищены. При копировании материалов с сайта, ссылка на первоисточник обязательна.
Яндекс.Метрика
Главная страница