1 / 1 / 0
Регистрация: 21.08.2020
Сообщений: 112
|
|
1 | |
Как реализовать перемещение объекта мышкой в Unity2D?22.09.2020, 19:36. Показов 12492. Ответов 12
Вообщем, 2д пространство . Нужно чтобы при нажатие(зажатие) на обЪект мышкой , его можно было таскать по экрану , а когда отпускаешь он падал .
Помогите пожалуйста , смотрел форумы но там либо для 2д либо не до конца понятно.
0
|
22.09.2020, 19:36 | |
Ответы с готовыми решениями:
12
Перемещение объекта мышкой Перемещение объекта мышкой! Перемещение объекта мышкой Перемещение объекта мышкой |
300 / 209 / 94
Регистрация: 04.07.2012
Сообщений: 895
|
|
23.09.2020, 11:43 | 2 |
Medoed, Для этого существует EventTrigger. Создаете публичный метод, который вешаете на OnPointerDown.
В банальном случае тупо меняете в этом методе bool переменную. Ну а в Update двигаете объект за курсором если bool true. Ну и в OnPointerUp, ставим переменную false и делаем проверки нужные Вам, типа если на месте, то вы победили.
0
|
1 / 1 / 0
Регистрация: 21.08.2020
Сообщений: 112
|
|
23.09.2020, 13:06 [ТС] | 3 |
Вы не могли бы показать пример кода?
0
|
2636 / 1564 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
|
23.09.2020, 13:48 | 4 |
Medoed, уточните, это вы хотите перетаскивать изначально физические объекты? Иначе, что означает "чтобы он падал "?
0
|
1 / 1 / 0
Регистрация: 21.08.2020
Сообщений: 112
|
|
23.09.2020, 17:06 [ТС] | 5 |
На 2д сцене есть например "ящик" , мышкой наводишь на него , зажимаешь , поднимаешь и таскаешь , отпускаешь и он падает.
Добавлено через 1 минуту Как я понимаю для падения нужен просто риджет бади , а вот как сделать само перетаскивание я не знаю.
0
|
2636 / 1564 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
||||||
23.09.2020, 19:35 | 6 | |||||
Сообщение было отмечено Medoed как решение
Решение
В сети очень много разной информации на эту тему, куча уроков, статей и способов.
Пусть будет ещё один способ. Закиньте этот скрипт на пустой объект в сцене. Этот объект будет отвечать за перетаскивание всех объектов на сцене с rb2d.
1
|
1 / 1 / 0
Регистрация: 21.08.2020
Сообщений: 112
|
|
25.09.2020, 17:09 [ТС] | 7 |
Спасибо за ответ , но как сделать так чтобы он игрока не мог перемещать?
0
|
2636 / 1564 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
|
25.09.2020, 17:45 | 8 |
Если перетаскивать в игре можно всё кроме игрока, тогда можно просто проверить имя или тег текущего объекта, на котором была нажата кнопка мыши и делать выход из метода, если это оказался игрок.
Либо воспользоваться слоями (LayerMask), и назначить всем объектам, которые можно перетаскивать какой нибудь слой. А при рейкасте (27 строка кода), добавить в метод этот слой, чтобы луч мог реагировать только на объекты с конкретным слоем. О слоях есть много уроков в сети.
0
|
1 / 1 / 0
Регистрация: 21.08.2020
Сообщений: 112
|
||||||
25.09.2020, 18:02 [ТС] | 9 | |||||
Хорошо
Добавлено через 7 минут Вот изменил часть скрипта . Но он не работает , в чем ошибка?
На объект тег повесить я не забыл
0
|
2636 / 1564 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
||||||
25.09.2020, 18:02 | 10 | |||||
А причем здесь метод?
0
|
1 / 1 / 0
Регистрация: 21.08.2020
Сообщений: 112
|
|
25.09.2020, 18:05 [ТС] | 11 |
Я понял в чем ошибка , но какой метод нужно использовать?
0
|
2636 / 1564 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
|||||||||||
25.09.2020, 18:09 | 12 | ||||||||||
Просто измените 29 строчку из моего кода
1
|
1 / 1 / 0
Регистрация: 21.08.2020
Сообщений: 112
|
|
25.09.2020, 18:09 [ТС] | 13 |
Хорошо
0
|
25.09.2020, 18:09 | |
25.09.2020, 18:09 | |
Помогаю со студенческими работами здесь
13
Перемещение объекта по форме мышкой Перемещение влево-вправо летящего объекта мышкой? Как реализовать мгновенное перемещение объекта в цикле к его начальной позиции? Как сделать мгновенное перемещение в Unity2d Как сделать поворот объекта в Unity2d Реализовать перемещение button1 по X оси, внутри какого либо объекта Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |