ScreenToWorldPoint не видит коллайдеры,находящиеся на панели

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

ScreenToWorldPoint не видит коллайдеры,находящиеся на панели

Сообщение skroliks 23 ноя 2022, 14:27

Делаю "Три в ряд". Вынес, чтобы камни при запуске появлялись не в обычной рабочей области, а на панели UI, чтобы удобно было размещать элементы дизайна (специально нашел скрипт для UNITY с подобной игрой, где сделано так же и все работает, я имею в виду вывод через панель). Однако, теперь при запуске мышь (ScreenToWorldPoint) не видит коллайдеры, которые на камнях, и получается выделение камней не происходит (пускаю луч, но пишет все время, что Object reference not set to an instance of an object, т.е. не находит ничего. Других никаких коллайдеров нет). Вот часть кода:

Vector2 ray = Camera.main.ScreenToWorldPoint(Input.mousePosition);
RaycastHit2D hit = Physics2D.Raycast(ray, Vector2.zero);

//И вот тут проверяем, но выдает ошибку как указал выше, т.е. не видит коллайдер)
Debug.Log("hit.collider = " + hit.collider.transform.position);


Когда я выводил камни в рабочей области (не на панели) - все работало отлично, но когда перевел чтобы камни появлялись на панели (UI) - вот такая вот беда. Помогите понять в чем проблема..
skroliks
UNIт
 
Сообщения: 60
Зарегистрирован: 10 сен 2022, 13:30

Re: ScreenToWorldPoint не видит коллайдеры,находящиеся на панели

Сообщение 1max1 24 ноя 2022, 00:31

юи и коллайдеры плохой тон для юнити, исключения есть, но не в таком случае. Для юи есть https://docs.unity3d.com/2019.1/Documen ... ycast.html
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: ScreenToWorldPoint не видит коллайдеры,находящиеся на панели

Сообщение skroliks 28 ноя 2022, 11:54

1max1 писал(а):юи и коллайдеры плохой тон для юнити, исключения есть, но не в таком случае. Для юи есть https://docs.unity3d.com/2019.1/Documen ... ycast.html


Тон тоном, но хотелось бы все равно понять в чем суть проблемы и почему у других это работает, а здесь не хочет.. :-?
skroliks
UNIт
 
Сообщения: 60
Зарегистрирован: 10 сен 2022, 13:30

Re: ScreenToWorldPoint не видит коллайдеры,находящиеся на панели

Сообщение 1max1 29 ноя 2022, 02:51

Натягиваем сову на глобус и удивляемся почему она орет как бешеная. Может у тебя коллайдер не 2д. Проверяй глобальные координаты и размеры объектов канваса и сопоставляй их с позицией мыши. Если канва не в world space проблем может быть больше.
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: ScreenToWorldPoint не видит коллайдеры,находящиеся на панели

Сообщение Saltant 29 ноя 2022, 03:57

Мож какой то элемент скрывает блок в иерархии юай, почекай галки на объектаё target raycast object или что то типа того, не помню точно.
Я на Google Play _https://play.google.com/store/apps/developer?id=Saltant
Аватара пользователя
Saltant
Адепт
 
Сообщения: 2234
Зарегистрирован: 09 окт 2018, 16:40
Откуда: Химки
  • Сайт


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

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

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