Привет всем не могу разобраться почему не работает скрипт. Нужно, что бы пуля уничтожалась при попадании по любому объекту, я сделал чтобы она удалялась со сцены при касании к объекту который не имеет тег, и по монстру но почему-то не срабатывает. Я уже и в колайдере пули ставил галку на против тригер и на враге все равно не работает. Скрипт внизу
Код
using UnityEngine; using System.Collections;
public class Bulet : MonoBehaviour {
public float bulletSpeed = 1f;//скорость пули public int DestroyBullet = 2;//через какое врямя будет удалена со сцены
// Use this for initialization void Start () { Destroy (gameObject, DestroyBullet);//таймер для удаления }
// Update is called once per frame void Update () { transform.Translate (bulletSpeed, 0, 0);//перемешение пули"Untagget" }
void OnTriggerEnter(Collider other){ if (other.gameObject.CompareTag(null) || other.gameObject.CompareTag("Monster") ) { Destroy (gameObject);//уничтожает обьект при косании с любой поверхностью } } }
OneKey, попробуй коллайдер пули увеличить, и еще бывает, что без ригидбоди не срабатывают коллизии. Попробуй повесить на обоих ригидбоди и отключи use gravity Я на драйве
OneKey, У меня тоже не получалось с помощью триггеров реализовать уничтожение объекта (Точнее работало, но не стабильно: из трех-четырех попаданий срабатывало одно). Попробуй использовать Physics.Raycast. В моих случаях работает безотказно.
OneKey, У меня тоже не получалось с помощью триггеров реализовать уничтожение объекта (Точнее работало, но не стабильно: из трех-четырех попаданий срабатывало одно). Попробуй использовать Physics.Raycast. В моих случаях работает безотказно.
Рейкаст мне не вариант делать уже времени мало переделывать. Повесил риджидбади и сделал тег только по понстром кажется работает, а состенами что-то придумаю http://www.falcogames.com/SnowCrushSetup.exe
Немного не по теме, но в том же ключе. Если выстрелов будет много, создание и удаление объекта очень "тяжелое" дело и грузит систему. Предлагаю использовать систему пулов. Что представляет из себя система пулов? Вы создаете заранее, скажем, 50-100 объектов и они все выключены. Когда вам нужно выстрелить, вы куском кода выбираете выключенный объект, включаете его, передаете все параметры(скорость, время исчезание и т.д.) и запускаете, но вместо удаления снова выключаете его, тем самым экономя ресурсы системы. https://www.assetstore.unity3d.com/en/#!/content/28002 - Бесплатный ассет, очень прост в обращении. К нему прилагает мануал как добавлять в пул, как включать и выключать, рекомендую. Не жадный на плюсы. Наши проекты: Clicker Mine Mania 2 - Увлекательный кликер в стиле Minecraft Angry Bee Evolution - Эволюция с элементами кликера Чего не хватает? - Викторина на логику"