Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 10.02.2020
Сообщений: 2

Управление объектами сенсором

10.02.2020, 21:52. Показов 1819. Ответов 3

Студворк — интернет-сервис помощи студентам
Всем привет, столкнулся с проблемой. Нужно сделать так, чтобы при нажатии на спрайт его можно было переместить с помощью сенсора. Но на касания реагируют и другие объекты. Как сделать так, чтобы на сенсор реагировал только объект на который я нажал?

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
public class Tahhii : MonoBehaviour
{
    private Vector3 touchPosition;
    private Rigidbody2D rb;
    private Vector3 direction;
    private float moveSpeed = 10f;
    
 
    private void Start()
    {
        rb = GetComponent<Rigidbody2D>();
    }
 
    private void Update()
    {
        if (Input.touchCount > 0)
        {
            Touch touch = Input.GetTouch(0);
            touchPosition = Camera.main.ScreenToWorldPoint(touch.position);
            touchPosition.z = 0;
            direction = (touchPosition - transform.position);
            rb.velocity = new Vector2(direction.x, direction.y) * moveSpeed;
 
            if (touch.phase == TouchPhase.Ended)
                rb.velocity = Vector2.zero;
        }
    }
 
 
 
 
 
 
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.02.2020, 21:52
Ответы с готовыми решениями:

Управление объектами
Дороу)) В общем не могу нигде найти: Как мне поменять свойства другого объекта не зная его конкретный класс? Будь то TButton или TLabel...

Управление динамическими объектами
Помогите решить проблему: 1 таймер (интервал 3000) создает динамические объекты: TImage *i1=new TImage(Form1); i1-&gt;Parent=Form1; ...

Скриптовое управление объектами UI
на сцену добавил Canvas, в него Button, на Canvas повесил скрипт, вывел в Button на клик метод, всё хорошо. НО! Как управлять самим...

3
250 / 186 / 68
Регистрация: 04.03.2019
Сообщений: 1,010
13.02.2020, 16:20
Цитата Сообщение от VladMarklove Посмотреть сообщение
Как сделать так, чтобы на сенсор реагировал только объект на который я нажал?
проверить на какой обьект вы попали.
пустить рейкаст в точке тыка пальцем.
получить попадание (hit) и вот оттуда взять уже обьект и двигать
0
0 / 0 / 0
Регистрация: 10.02.2020
Сообщений: 2
13.02.2020, 20:53  [ТС]
Цитата Сообщение от MuaddibFremen Посмотреть сообщение
проверить на какой обьект вы попали.
пустить рейкаст в точке тыка пальцем.
получить попадание (hit) и вот оттуда взять уже обьект и двигать
Можете написать как это будет выглядеть в коде? просто не совсем понимаю что именно нужно сделать
0
 Аватар для 1max1
3362 / 1775 / 1028
Регистрация: 26.10.2018
Сообщений: 5,204
13.02.2020, 23:58
Код очень неоптимальный, но...
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
public class Tahhii : MonoBehaviour
{
    private Vector3 touchPosition;
    private Rigidbody2D rb;
    private Vector3 direction;
    private float moveSpeed = 10f;
 
    static GameObject go;
 
    private void Start()
    {
        rb = GetComponent<Rigidbody2D>();
    }
 
    private void Update()
    {
        if (Input.touchCount > 0 && gameObject == go)
        {
            Touch touch = Input.GetTouch(0);
            touchPosition = Camera.main.ScreenToWorldPoint(touch.position);
            touchPosition.z = 0;
            direction = (touchPosition - transform.position);
            rb.velocity = new Vector2(direction.x, direction.y) * moveSpeed;
 
            if (touch.phase == TouchPhase.Ended)
                rb.velocity = Vector2.zero;
        }
    }
 
    private void OnMouseDown()
    {
        go = gameObject;
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.02.2020, 23:58
Помогаю со студенческими работами здесь

Управление объектами из библиотеки (AS3)
Здраствуйте, у меня такой вопрос: Можно ли объект, скажем, MovieClip по его Name: mp в коде вызвать, чтобы менять этому объекту...

Управление динамически созданными объектами
Ситуация: у меня создается динамически несколько объектов TLabel, допустим 50... Идея в том, что такое количество динамически созданных...

Децентрализованное управление несколькими объектами
Имеется туннель в котором появляются различного рода препятствия(буквы Г или просто перегородки и тому прочее). Так же имеются несколько...

Управление объектами графической сцены
Добрый день Столкнулся с проблемой, к которой не знаю с какой стороны подойти. Разрабатываю редактор диаграмм или схем (кому как...

Создать форму: управление объектами недвижимости
Нужно создать форму: управление объектами недвижимости. С указанием множества характеристик, цен, текущего продавца и риэлтора, который...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru