Полезное

Мы Вконтакте

Discord канал

#
123456 ... 14
Модератор: icms
Аватара пользователя
Пользователь
Сообщения: 154
Хотел упростить себе жизнь, да не вышло))) Спасибо понято))
Аватара пользователя
Пользователь
Сообщения: 154
Что мне ответили на answerhub :


Hi man , If i get , you want that the cube moves along the green arrows, in the Right part of the image.

Sure, its possible. First you have to Find the direction in wich you want to move. The green Arrow X. If you are working with an actor here is the Case A or Case B.

A) If your camera is at the same level, and Always looking to the cube : you can get his forward vector and his right vector., Then Set your cube location ( not the add location ) to , his location+ the vector right of the camera. You can also multiply the cameravector for a value like Speed to get a faster movement.

B) If you camera is not at the same level, and not Always look at the char.

You have to get the location of the camera, break his location, and make a new vector with cameraX,YandCubeZ. This way you get a location at the same high of your cube... then subtract their location , to get the direction that point from one to the other. Now you can rotate this vector . just search for the Rotate vector node , add 90° on the Z axis to get the . Perpendicular Arrow you want.

Be sure to rotate you cube!




На скрине что я сделал, и как это соединять не понимаю. По идее мне нужно блокировать одну ось и чтобы остальные 2 реагировали на поворот. как то так вроде.


Изображение
Аватара пользователя
Пользователь
Сообщения: 474
1)Ты не знаешь чего хочешь - поэтому у тебя нет никакого результата
2) Рисуй на бумажке что должно быть,какие вектора нужны и тд
3) не умеешь работать с векторами в целом - изучи для начала самое элементарное ,как умножать и складывать
4) как поймешь как работать с векторами иди к пункту 2, а дальше все как по маслу .
Что у тебя в голове творится и что за вырезки ты передаешь в виде скринов понять невозможно
Аватара пользователя
Пользователь
Сообщения: 154
Всем привет! В общем ребята возвращаюсь к старым баранам )) Мне нужно реализовать перемещение объекта влево\вправо относительно камеры.Камера крутится вокруг центра сцены,как такое можно сделать? Не один день сижу над проблемой,всю голову сломал ((Прикладываю видос сцены и скрин логики эктора.

Изображение

Аватара пользователя
Пользователь
Сообщения: 2319
нужно один раз разобраться как работают матрицы трансформации, и навсегда пропадут вопросы перевода одной системы координат в другую, двигать вращать обьект относительно чего угодно.
https://en.wikipedia.org/wiki/Transformation_matrix

viewtopic.php?p=26083#p26083

чтоб понять точно что тебе нужно нарисуй схему от руки, и выложи. так по твоему описанию только приблизительно понимаю что ты хочешь.
Но кратце все решается в 3 действия,
1 - определить оси(базис) движения обьекта в локальном пространстве обьекта относительно которого тербуется трансформация
2 - перевести оси в мировую систему координат (операции с матрицами)
3 - перевести оси локальную нужного трансформируемого обьекта (операции с матрицами)
3 и 2 можно заменить одним действие... переводить локального обьекта в локальные другого обьекта. итого 2 действия
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 154
KakaIIIka писал(а):
Мне нужно реализовать перемещение объекта влево\вправо относительно камеры.Камера крутится вокруг центра сцены,как такое можно сделать?


То есть как бы я не повернул камеру,в моём случае "БАК" смотрит на камеру - уже реализовано. Собственно чего я хочу добиться - Хочу перемещать объект влево\вправо как бы камера не была повернута.

Я вообще 3 дэшник,если это поможет,объясню на примере 3д макса.Также как и в движке в максе есть,как глобальные координаты,так и локальные. Если я в максе поверну объект на 45 градусов,то смотря на него под тем же углом в режиме локальных координат я могу его двигать в стороны.Чего я и добиваюсь ((

Следовательно при использовании блока SetRelativeTransform - Rotation - Поворачивает объект не по локальным осям. Хм....
Или я рукожоп.
Аватара пользователя
Пользователь
Сообщения: 2319
я тоже 3д-шник...
SetRelativeTransform это трансформ относительно родительского обьекта(root) насколько я помню.
в максе есть выбор системы кординат в которых будет проводиться трансформация, ворлд, локал, вьюв, парент - спейс и т.д.
Так вот SetRelativeTransform это как раз парентспейс вроде бы.
Самое главное, обьект ведь нужно трансформировать не отсносительно родителя а относительно другого обьекта. Поэтому нужно сначал прийти к общей(!) системе координат.
Из описание подходит вьюв спейс. ТОесть базис это положение камеры.
тогда по этой схеме должно сработать viewtopic.php?p=26521#p26521
точней не совсем по ней, но она должна натолкнуть в нужное направление.
только добавляем не вращение а перемещение.
позже, если не лень будет набросаю пример...
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 2319
http://image.prntscr.com/image/e85b6255 ... aff25.jpeg

Изображение
немного я по дибильному управление придумал, не судите за него строго -__- я его находу соображал...
http://i.imgur.com/0kG0L5s.mp4 видео пример работы
_________________
we need to go deeper
Аватара пользователя
Пользователь
Сообщения: 995
Эмм.. Ну правый вектор же, от камеры до объекта тейс от него правый(или cross product), берётся направление по старту. Отсюда делал подобное. В этом случае нет нужды вешать на тик постоянный. Работает помягче, можно физику применять не багует и т.д. Или я не разобравшись не в тему? 8)
Вот тут как углы в UE находить по правильному. https://youtu.be/f9z7N50wu7s
Последний раз редактировалось Vladimir488 14 дек 2016, 00:46, всего редактировалось 1 раз.
Аватара пользователя
Пользователь
Сообщения: 2319
да я только принцип работы показал, верхние блоки суть, остальное бесполезное, что на ходу придумал то и налепил. И операции с матрицами проще чем каждый вектор вычислять. А на тике потому что дебаг бокс. надо было не вы..ваться а мышью управление делать...
_________________
we need to go deeper
Последний раз редактировалось Snake 14 дек 2016, 01:16, всего редактировалось 2 раз(а).


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

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