Полезное

Мы Вконтакте

Discord канал

#
Пред.
Модератор: icms
Аватара пользователя
Пользователь
Сообщения: 32
Реализовал вращение объекта в захвате следующим образом:
Изображение

Работает всё как надо, вот только поворачивается объект относительно своих осей. Например, двигаешь мышкой вверх-вниз и объект «кивает» тебе. Затем поворачиваешь его боком и теми же движениями мыши объект «кивает» уже не тебе )
Известен ли кому-нибудь способ, как реализовать вращение объекта относительно осей игрока? Чтобы одни и те же кнопки/движения приводили к одним и тем же последствиям, независимо от того, куда смотрит объект и где какая сторона света.
Аватара пользователя
Пользователь
Сообщения: 4069
AddWorldRotation попробуй
Аватара пользователя
Пользователь
Сообщения: 1341
видимо нужно учитывать положение игрока относительно предмета
_________________
прикрепленные картинки с radikal не смотрю.
Аватара пользователя
Пользователь
Сообщения: 4069
только пины подключай напрямую к АддВорлдРотатион

p.s. т.е. переменная для суммирования не нужна
Аватара пользователя
Пользователь
Сообщения: 995
Поворачивай по горизонтали сам объект. По вертикали его рут(нужен будет кламп).
Аватара пользователя
Пользователь
Сообщения: 32
Не получается с «AddWorldRotation» и, мне кажется не получится. Он же по глобальным осям ориентирует.
Можно поподробнее?
Аватара пользователя
Пользователь
Сообщения: 32
И ещё тогда вопрос. Как поворачивать объект, относительно его физического центра, а не относительно той точки, за которую я схватил его?
Аватара пользователя
Пользователь
Сообщения: 32
«SetWorldRotation» способен решить проблему с осью «Z». Ведь ось «Z» всегда только вертикальна, а изменение плоскости игрока я не планирую.
Изображение
С другими осями надо что-то выдумывать. Возможно, стоит попробовать вычислить углы между осями управляемого объекта и игроком, а потом эти углы использовать при определении скорости наклона по этим же осям. Ведь такое вращение требует от движения мыши по вертикали контроль одновременно за двумя осями. Но, может быть, моя идея глупа и нужно изучать матрицы поворота и угол между двумя векторами.
Аватара пользователя
Пользователь
Сообщения: 4069
тоесть когда ты поворачиваешь персонажа, тебе нужно что бы объект смотрел всегда на персонажа?, или был повернут к персонажу той стороной которая была последней?

p.s. тогда можно использовать Find Look At Rotation у предмета, во время поворота персонажа, для того что бы сохранять прежнюю относительность, а потом AddWorldRot
Аватара пользователя
Пользователь
Сообщения: 32
Сделал видео:


Тут я демонстрирую то, что имею. Я подхожу к объекту прямо, поднимаю его, включаю управление наклонами и начинаю двигать мышкой вперёд-назад. Затем обхожу объект сбоку и вновь делаю тоже самое. Затем сзади и опять те же действия. Потом с другого боку и опять показываю наклоны, движением мыши вперёд-назад.
Как видно, то, в какую сторону будет наклоняться объект, зависит от того, с какой стороны к нему подойти. На самом деле, ещё от того, какой он стороной к тебе лежит. А нужно так, чтобы независимо от сторон, при движении мышки вперёд-назад, объект всегда «кивал» тебе. Объект не должен автоматически поворачиваться к тебе передом, он просто объект, которым нужно управлять. И управление должно быть удобным. Чтобы наклоны всегда работали одинаково. Вперёд-назад — объект всегда наклоняется к тебе и от тебя.

Может быть можно всегда разворачивать гизмо объекта к игроку? Чтобы его оси, не меняя наклоны объекта, сперва расположились параллельно осям игрока, а потом уже участвовали в поворотах? Или это не возможно?


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

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