Обнаружение столкновений в Unity? - PullRequest
0 голосов
/ 20 февраля 2019

Я делаю игру в Unity, в которой я хочу, чтобы были обнаружены столкновения между двумя движущимися объектами (один из которых перемещается игроком с помощью касания. По причинам тестирования в настоящее время я пишу скрипт для элементов управления мышью).Однако по какой-то причине, когда движущийся игровой объект перемещается в поле коллайдера объекта, который должен вызвать событие при столкновении, ничего не происходит.Я добавил коллайдеры к обоим объектам и добавил триггер Is для коллайдера объекта, который должен инициировать событие, и по мере необходимости, но он все еще не работает. Я попробовал это с кодом, который должен сначала вызвать событие, и это не такне работает, а затем я просто попытался использовать debug.log, чтобы увидеть, была ли проблема с кодом, связанным с событием, которое я хочу вызвать, но ничего не работает.Кто-нибудь знает, как можно решить эту проблему?

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Collision : MonoBehaviour
{
    private void OnTriggerEnter2D(Collider2D other)
    {
        Debug.Log("Hit Detected");
    }
}

1 Ответ

0 голосов
/ 20 февраля 2019

Вам нужно поставить Rigibody на 2 объекта, если ваш проект:

  • 2D: «Масштаб гравитации» равен 0 (чтобы у них не было гравитации)
  • 3D: установите флажок «Использовать гравитацию» на false
...