Перемещение объекта пальцем

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Re: Перемещение объекта пальцем

Сообщение Mir 17 июл 2018, 20:28

Cr0c писал(а):
Синтаксис:
Используется csharp
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
ray.direction.y = transform.position.y;
ray.direction.z = transform.position.z;
 



ВЫдает ошибку на код : не удалось изменить значение для Unity/ray .direction так как он не является переменной
Mir
UNIт
 
Сообщения: 82
Зарегистрирован: 18 июн 2016, 19:44

Re: Перемещение объекта пальцем

Сообщение 1max1 17 июл 2018, 20:37

Ибо direction свойство, а не поле.
Синтаксис:
Используется csharp
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
var dir = ray.direction;
dir.y = transform.position.y;
dir.z = transform.position.z;
ray.direction = dir;
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Перемещение объекта пальцем

Сообщение Mir 18 июл 2018, 21:56

1max1 писал(а):Ибо direction свойство, а не поле.
Синтаксис:
Используется csharp
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
var dir = ray.direction;
dir.y = transform.position.y;
dir.z = transform.position.z;
ray.direction = dir;



все равно не перемезает по х. двигается по всем осям в любые стороны
Mir
UNIт
 
Сообщения: 82
Зарегистрирован: 18 июн 2016, 19:44

Re: Перемещение объекта пальцем

Сообщение Cr0c 18 июл 2018, 22:36

Синтаксис:
Используется csharp
public Transform target;
private Vector3 offset;
private float distance;
void Update() {
 if (Input.GetMouseButtonDown(0)) {
  RaycastHit hit;
  Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
  if (Physics.Raycast(ray, out hit)) {
   target = hit.transform;
   offset = target.position - hit.point;
   distance = hit.distance;
  }
 }
 if (Input.GetMouseButton(0) && !Input.GetMouseButtonDown(0) && target != null) {
  // для 2D
  Vector3 v =  Camera.main.ScreenToWorldPoint(Input.mousePosition);
  v.y = target.y;
  v.z = target.z;
  target.position = v;
  // для 3D
  /*
  Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
  Vector3 v = ray.direction;
  v.y = 0f;
  v.z = 0f;
  target.position = ray.origin + v * distance + offset;
  */

 }
 if (Input.GetMouseButtonUp(0)
  target = null;
}
Аватара пользователя
Cr0c
Адепт
 
Сообщения: 3035
Зарегистрирован: 19 июн 2015, 13:50
Skype: cr0c81

Re: Перемещение объекта пальцем

Сообщение 1max1 19 июл 2018, 04:30

все равно не перемезает по х. двигается по всем осям в любые стороны

боже мой, и как я должен был догадаться что тебе еще там нужно перемещать объект по одной стороне?
Изображение
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Перемещение объекта пальцем

Сообщение Cr0c 19 июл 2018, 12:22

1max1 писал(а):боже мой, и как я должен был догадаться что тебе еще там нужно перемещать объект по одной стороне?

Mir писал(а):Работает. спасибо большое)
А где подправить чтобы двигался объект только влево вправо?
Аватара пользователя
Cr0c
Адепт
 
Сообщения: 3035
Зарегистрирован: 19 июн 2015, 13:50
Skype: cr0c81

Re: Перемещение объекта пальцем

Сообщение 1max1 19 июл 2018, 13:14

Я не вижу в этой теме такого сообщения... Эх, щас бы скакать из треда в тред...
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Перемещение объекта пальцем

Сообщение Cr0c 19 июл 2018, 13:56

1max1 писал(а):Я не вижу в этой теме такого сообщения...

От 14 числа
Mir писал(а):Работает. спасибо большое)
А где подправить чтобы двигался объект только влево вправо?
Аватара пользователя
Cr0c
Адепт
 
Сообщения: 3035
Зарегистрирован: 19 июн 2015, 13:50
Skype: cr0c81

Re: Перемещение объекта пальцем

Сообщение 1max1 19 июл 2018, 14:21

Да, тупанул, бывает.
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Перемещение объекта пальцем

Сообщение Mir 19 июл 2018, 21:05

Cпасибо, заработало.

только вот здесь через transfor.postion

v.y =transform.position.y;
v.z = transform.position.z;
и тогда все работает)))
Mir
UNIт
 
Сообщения: 82
Зарегистрирован: 18 июн 2016, 19:44

Re: Перемещение объекта пальцем

Сообщение Mir 05 авг 2018, 19:45

Можно еше вопрос)

Как сделать чтобы двигался только в пределах от -2 до 2 по оси х?
Mir
UNIт
 
Сообщения: 82
Зарегистрирован: 18 июн 2016, 19:44

Re: Перемещение объекта пальцем

Сообщение seaman 05 авг 2018, 20:00

https://docs.unity3d.com/ScriptReferenc ... Clamp.html
Советую иногда почитывать справку.
seaman
Адепт
 
Сообщения: 8352
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Пред.

Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 23