Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/30: Рейтинг темы: голосов - 30, средняя оценка - 4.73
36 / 11 / 1
Регистрация: 14.09.2015
Сообщений: 60

Перемещение объекта

22.02.2016, 13:51. Показов 5809. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Немного запутался с перемещением.. Игра 2d. Нажимаем в любую точку на экране, и начинаем водить пальцем вверх - вниз (право-лево), объект на экране повторяет это перемещение. Суть в том что, где бы не нажали, точка превращается в "контроллер" для перемещения.
PS: надеюсь удалось донести мысль, а то с описанием не очень )))
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.02.2016, 13:51
Ответы с готовыми решениями:

Перемещение объекта
Придумал вот такое перемещение облаков, чтоб летали туда сюда (да наверно не очень правильно, но я учусь) using UnityEngine; using...

Перемещение объекта
В лист добавляю префабы. Создаю их на сцене с помощью Instantiate. так: gateList.Add(GatePrefab); Instantiate(gateList, curPos,...

Перемещение объекта за пальцем
Есть объект, который должен перемещает за пальцем. Как это сделать. Я вожу пальцем по телефону и объект следует за пальцем

10
 Аватар для Cr0c
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
22.02.2016, 15:52
Malkkiri, TouchPhase.Began - запомним точку, TouchPhase.Moved - считаем от точки касания до текущей
0
36 / 11 / 1
Регистрация: 14.09.2015
Сообщений: 60
22.02.2016, 16:07  [ТС]
Cr0c, честно говоря не совсем понял... Получается мы запоминаем точку касания, затем знаем о текущей точки (TouchPhase.Moved).
А как совместить с объектом который надо двигать? он может находиться в любой координате, и его надо двигать в том же направлении настолько ,насколько двигался палец от точки касания до текущей.
0
 Аватар для Cr0c
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
22.02.2016, 16:44
...
0
36 / 11 / 1
Регистрация: 14.09.2015
Сообщений: 60
22.02.2016, 16:54  [ТС]
прикол в том что точка касания и объект не совпадают, касаться можно с одной стороны экрана, а объект для перемещения находиться в другой стороне.
0
 Аватар для Cr0c
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
22.02.2016, 18:26
Malkkiri, лень самому пяток строк кода написать?
C#
1
2
3
4
5
6
7
8
9
10
11
public Vector2 center;
void Update()
{
 if (Input.touchCount > 0)
 {
  if (Input.touches[0].phase == TouchPhase.Began)
   center = Input.touches[0].position;
  if (Input.touches[0].phase == TouchPhase.Moved || Input.touches[0].phase == TouchPhase.Stationary)
   Vector2 moved = Input.touches[0].position - center; // вектор сдвига от начала касания до текущей точки касания
 }
}
И сдвигайте откуда угодно этот ваш объект.
0
36 / 11 / 1
Регистрация: 14.09.2015
Сообщений: 60
22.02.2016, 19:31  [ТС]
Cr0c, ты наверное неправильно все понял. Данный код не сработает !!!!
ща почти свою реализацию допилял, ща примерно расскажу

Добавлено через 7 минут
Cr0c, как просто переместить объект к точке касания-перемещения я знаю.

В общем в двух словах.
1. создаю невидимый объект. он лежит на сцене всегда.
2. при начале касания, в точку касания помещаю этот объект.
3. пока двигается "палец" перемещаю невидимый объект:
C#
1
2
Vector3 direction = (movePosition - point.transform.position).normalized;
pointRb.velocity = dir * 2;
4. кроме невидимого объекта также перемещается "нужный объект" (игрок) на такой же вектор.
5. Как только координаты "невидимого объекта" равны координатам точки в которую надо двигаться, движения "игрока" останавливаетcя

без "невидимого" объекта не знаю как вычислить место остановки "игрока"
0
 Аватар для Cr0c
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
22.02.2016, 19:59
Malkkiri, Вы читать хорошо умеете? Вы вообще C# и Unity хоть сколько-нибудь знаете? Вы результат работы кода смогли понять? Слово "сдвиг" Вам известно?
0
36 / 11 / 1
Регистрация: 14.09.2015
Сообщений: 60
22.02.2016, 20:20  [ТС]
Я так понимаю со чтением туговато у вас сегодня Cr0c, пересмотри свой код, а потом описание которое я написал, может все же поймёте о чем вообще идёт речь, и какой сдвиг вы считаете. В любом случае спасибо за потраченное время. И делаю вам замечание!!! Постарайтесь вести себя сдержание! Вы все же не школьник какой-то. Хорошего вечера.
0
 Аватар для Cr0c
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
22.02.2016, 22:47
Malkkiri, геометрический смысл разницы векторов помните?
0
1 / 1 / 0
Регистрация: 19.01.2014
Сообщений: 10
23.02.2016, 15:12
Тут важнее определение вектора. Вектор - множество ВСЕХ одинаково направленных отрезков равной длины. То есть вектор сдвига пальца - это точно тот же вектор сдвига объекта (a = a) (то есть считать его не нужно, он у вас уже есть). Вам нужно лишь масштабировать его, с помощью Time.deltaTime и какого-то своего коэффициента скорости.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.02.2016, 15:12
Помогаю со студенческими работами здесь

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

Перемещение объекта с клавиатуры
Всем привет. Пытаюсь сделать простейшее перемещение объекта с клавиатуры, но возникла проблема со скоростью перемещения: public...

Неточное перемещение 2D объекта
2д игра. Как проходит перемещение: по нажатию стрелки на клавиатуре, персонаж плавно смещается на 10px (условно). Но проблема в том, что...

Перемещение объекта по диагонали 2d
Здравствуйте, я хочу сделать так что бы персонаж двигался по диагонали, когда например нажаты две кнопки "w"+"d" -...

Перемещение на другую сторону объекта
Добрый день. Как перенести объект(камеру которая движется) на другую сторону куба(тригера) если он в нее зашел(столкнулся). Думаю может как...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru