2016-07-24 5 views
0

В расширенном Я хотел бы сказать, если это простой вопрос с простым ответом, я прошу прощения, поскольку я только что получил программирование. В принципе, я пытаюсь создать скрипт, который имеет блок с именем blue (рисунок ниже) при столкновении с FPSController, будет разрушаться, вот мой сценарий:Не работает скрипт на столкновении?

using UnityEngine; 
using System.Collections; 

public class Cube : MonoBehaviour { 

    void OnCollisionEnter (Collision col) { 

     if(col.gameObject.name == "Blue") { 

      Destroy(col.gameObject); 
      print ("collison detected"); 

     } 

    } 

} 

по какой-то причине, хотя всякий раз, когда контроллер кадров сталкивается с объектом, известным как «Blue» ничего не происходит функцию печати() не срабатывает и не является функцией destroy() enter image description here

Благодарим Вас за помощь ;)

ответ

0

Жесткое тело отсутствует в ваших кубиках.

.Attach Rigidbody Компонент для обоих кубов.

. Также установите оба куба Rigidbody на Is-кинематику. Вы должны установить оба Cubes Rigidbody в Is-кинематику, чтобы контроллер символов не смог его переместить. Обратите внимание, что если ваш куб падает после добавления Rigidbody, просто отключите Use Graivty на Rigidbody.

Важно:

.Delete FPSController. Поскольку вы будете взаимодействовать с другими объектами GameObjects Rigidbody, используйте RigidBodyFPSController. Его можно найти в Assets\Standard Assets\Characters\FirstPersonCharacter\Prefabs. Перетащите RigidBodyFPSController в сцену и приложите к ней сценарий Cube.

Вы увидите, что есть Rigidbody, прикрепленный к RigidBodyFPSController. Не изменить его настройки.

Все. Все должно работать должным образом.

Cube настройки:

enter image description here

RigidBodyFPSController Настройки:

enter image description here

+0

Я поставил "Blue" для твердого тела, есть, кинематическая непроверенной и "использовать гравитацию" бесконтрольно, однако только изменение Я вижу, что куб падает после того, как FPScontroller касается его. Кстати, это изображение, чтобы показать: http://imgur.com/a/2BikD – SpikyCat

+0

** «Я установил« Синий »на жесткое тело "** Вы не устанавливаете объект для твердого тела, вы прикрепляете к нему жесткое тело. Можете ли вы прикрепить Rigidbody к обоим объектам? – Programmer

+0

Я уже сделал это, я уже пытался изменить, какой объект получает скрипт, а также – SpikyCat

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