Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
0 / 0 / 0
Регистрация: 20.01.2021
Сообщений: 14
1

Движение объекта строго по линии (2D)

20.01.2021, 21:05. Показов 2689. Ответов 2

Author24 — интернет-сервис помощи студентам
Здравствуйте.

Имеется объект и две точки в пространстве, нужно сделать так, чтобы можно было двигать объект мышкой, но он оставался на линии между этих точек.

По сути нужно сделать обычный ползунок, но чтобы он работал под любым углом.

Движение объекта строго по линии (2D)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.01.2021, 21:05
Ответы с готовыми решениями:

Движение за объектом строго по оси Х
Помогите немного дописать скрипт. Написал скрипт слежения за объектом, но мне его нужно немного...

Возможно ли сделать движение зрачков, реагирующее на движение какого-либо объекта
Вообщем благодаря модеру удалось разукрасить картинку,за что ему спасибо. Нужна анимация для нее....

Сформировать меню: 1) свободное движение объекта 2)движение с клавиатуры
Сформировать на экране меню, состоящее из следующих пунктов: 1. Движение вдоль периметра экрана....

Инициализация объекта строго константой
Пишу class Class { private: const int *Int; public: Class(const int *b) { Int=b; } ...

2
3353 / 1769 / 1025
Регистрация: 26.10.2018
Сообщений: 5,198
20.01.2021, 21:46 2
Лучший ответ Сообщение было отмечено Cody Never как решение

Решение

Если знаком с геометрией, думаю труда не составит понять https://docs.unity3d.com/Scrip... oject.html
1
0 / 0 / 0
Регистрация: 20.01.2021
Сообщений: 14
21.01.2021, 16:56  [ТС] 3
Спасибо, пришлось подумать, но в итоге всё работает.

Так выглядит итоговый код кому надо.
C#
1
2
3
4
5
_mousePosition = _camera.ScreenToWorldPoint(Input.mousePosition);
var towardVector = _mousePosition - (Vector2)_bodyTransform.position;
var lineVector = startPoint - endPoint;
movementVector = Vector3.Project(towardVector, lineVector);
_bodyTransform.Translate(movementVector);
0
21.01.2021, 16:56
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.01.2021, 16:56
Помогаю со студенческими работами здесь

Как расположить панель с графикой строго одну под другой, чтобы линии сошлись в координатах?
Вот небольшой пример, GRAFICPanel содержит линию от PaneL1 и PaneL2, но иногда PaneL2 нужно удалять...

Движение объекта вдоль другого объекта в matplotllib
Не получается запрограммировать движение сектора круга вдоль прямоугольника. Проблемы: 1) Не...

Направление движения строго в сторону поворота объекта с rb.AddForce?
В данный момент объект двигается и вращается следующим образом: if (AxisVer != 0)...

Движение линии
Здравствуйте. Как сделать циклом движение линии с задержкой? Например с функцией setTimeout. ...

Движение линии по времени
Ребята выручайте... нужно сделать все тоже самое, что на этом сайте...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru