Развитие игровой вспышки
Текущее время: Сб ноя 18, 2017 2:16 pm

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: как отследить клик
СообщениеДобавлено: Сб окт 03, 2015 1:10 pm 
Не в сети

Зарегистрирован: Пн сен 14, 2015 1:00 pm
Сообщений: 14
Есть куб, нужно отследить по какой стороне сделан клик. Подскажите как это сделать!


Вернуться наверх
 Профиль Отправить e-mail  
 
 Заголовок сообщения: Re: как отследить клик
СообщениеДобавлено: Пн окт 05, 2015 8:00 pm 
Не в сети
Аватар пользователя

Зарегистрирован: Ср авг 12, 2009 6:51 pm
Сообщений: 544
Откуда: Москва
Сайт: http://romamik.com
Если речь о кубе, то не сложно:
Вызвать Physics.Raycast и узнать в какую сторону направлена нормаль, это однозначно даст знать какая именно сторона куба была нажата.
Код:
      if (Input.GetMouseButtonDown (0)) {
         Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
         RaycastHit hitInfo;
         if(Physics.Raycast(ray, out hitInfo))
         {
            if(hitInfo.collider is BoxCollider)
            {
               Vector3 localNormal = hitInfo.transform.InverseTransformPoint(hitInfo.normal);
               int n = -1;
               if(localNormal.x > 0.5)
                  n = 0;
               else if(localNormal.x < -0.5)
                  n = 1;
               else if(localNormal.y > 0.5)
                  n = 2;
               else if(localNormal.y < -0.5)
                  n = 3;
               else if(localNormal.z > 0.5)
                  n = 4;
               else if(localNormal.z < -0.5)
                  n = 5;

               Debug.Log(localNormal + ". Clicked on side N " + n);
            }
         }
      }


Вернуться наверх
 Профиль Отправить e-mail  
 
 Заголовок сообщения: Re: как отследить клик
СообщениеДобавлено: Вт окт 06, 2015 10:35 am 
Не в сети

Зарегистрирован: Пн сен 14, 2015 1:00 pm
Сообщений: 14
Большое спасибо, очень хорошее решение.


Вернуться наверх
 Профиль Отправить e-mail  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB