2015-09-14 2 views
0

Я новичок в Unity3d и имею проблемы с доступом к различным частям медвежонка (как руки, ноги) при прикосновении. У меня есть FBX-модель тесного медведя, и я давал теги для каждой части, но когда я нажимаю на определенную часть, она дает мне метку целой baseModel не этой конкретной части.Доступ к различным частям модели FBX в единстве 3d

Вот как моя FBX модель выглядит

enter image description here

В инспекторе, это его настройки

enter image description here

код, который я использую:

void Update() 
{ 
    if (Input.GetMouseButtonDown(0)) 
    { 
     ray = Camera.main.ScreenPointToRay(Input.mousePosition); 
     if (Physics.Raycast(ray, out hit,Mathf.Infinity)) 
     { 
      Debug.Log("BodyPart Tag: " + hit.collider.tag); 

      switch (hit.collider.tag) 
      { 
       case "head": 
       { 
       } 
       case "leg": 
       { 
       } 
      } 
     } 
    } 
} 

Я хочу выполнить спецификацию на основе тега.

ответ

1

Вы должны удалить свой Collider component со своего основного объекта и добавить коллайдер в каждую часть вашего объекта. В противном случае, когда вы нажмете объект, функция завершится после попадания первого коллайдера, который является коллайдером родительского объекта в вашем случае.

+0

Спасибо @ Cagkan Toptas. Он решает мою проблему. – Itkrux

Смежные вопросы