@raw1

Как реализовать drag and drop в пространстве?

Делаю 3d редактор и там нужно как то перетаскивать объекты мышью . Если бы это была плоскость такое можно было бы реализовать без проблем , но надо как то добавить глубину .То есть перемещения как то должны просиходить в 3 осях x,y,z
  • Вопрос задан
  • 237 просмотров
Пригласить эксперта
Ответы на вопрос 3
@GreatRash
Я представляю это так:

1) есть координатная сетка X Y Z
2) есть камера (через которую юзер видит объект)
3) считаем угол между плоскостью камеры и плоскостями координатной сетки
5) который угол меньше, в той плоскости и начинаем таскать объект (конечно не забыв транслировать экранные координаты в координаты на той плоскости)

Ну и до кучи сделать 3 стрелочки (как во всех 3d-редаторах), которые будут дублировать оси X Y Z. Если кликнули в стрелку, то считать, что таскаем вдоль этого вектора.
Ответ написан
Комментировать
MrMureno
@MrMureno
VR for all
docs.garagegames.com/torque-3d/official/content/do...
Вы же наверняка пользовались хоть каким-нибудь 3d редактором..
Дополнительные объекты/контролы.
Стрелочки - по оси позволяют сдвинуть.
Квадраты/плоскости - двигать объект в плоскости (что как вы описали не вызывает проблем)
Ответ написан
Комментировать
@AlexSku
не буду отвечать из-за модератора
Выводите 3 вида: спереди, сверху, слева. Тогда перемещение будет по двум координатам.
Для захвата объекта есть метод проекции луча (указателя мыши).
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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