@UnityMakar

Почему не реагирует OnTriggerEnter2D в Unity?

Помогите пожалуйста!
Я делаю 2D игру про космический корабль там есть камни которые должен уничтожать корабль. Почему то камень не реагирует на пули и барьер(у них таг "Destory"). Вот код камня:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Control_Stoun : MonoBehaviour {

    void Update () {
		transform.position = new Vector2(transform.position.x, transform.position.y + -1 * 2 * Time.deltaTime);
		transform.Rotate(transform.rotation.x, transform.rotation.y, transform.rotation.z + -1 * 40 * Time.deltaTime);
	}

	private void OnTriggerEnter2D(Collider2D collision)
	{
		Debug.Log("1");
		if (collision.tag == "Destory"){
			Destroy(gameObject);
		}
	}
}

Вот компоненты камня:
5c3b2ec53a65d286596794.png
  • Вопрос задан
  • 41 просмотр
Решения вопроса 1
@p4p
1. У триггера должен стоять флаг is trigger
2. Для сравнения тега есть функция collision.compairTag. Это быстрее и не засоряет память.
3. Один из объектов кажется должен быть rigidbody

Да и лучше чем проверять теги, настроить взаимодействие физики по слоям.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Particle Москва
от 150 000 руб.
Pixonic Москва
от 220 000 руб.
PHYGITALISM Москва
от 70 000 руб.
26 марта 2019, в 01:09
40000 руб./за проект
26 марта 2019, в 00:54
40000 руб./за проект
26 марта 2019, в 00:31
20000 руб./за проект