BoxCollider2D на котором trigger реагиругет без причины

учусь юнити и делаю простую игру и тут есть мяч на котором есть RigidBody2D и CircleColldier2D и материал для прыгучести есть пустой объект на котором есть BoxCollider2D с Trigger-ом у других объектов нет RigidBody2D есть только еще одна платформа с PolygonCollider2D в начале мячик стоит на платформе и идет туда куда движется платформа но через некоторое время после запуска сцены не знаю почему но BoxCollider2D пустова объекта реагирует и переносит меня на проигрышную сцену

вот код для слежки за платформой

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

public class Ball : MonoBehaviour
{

    [SerializeField] Paddle paddle1;

    Vector2 paddleToBallVector;

    // Start is called before the first frame update
    void Start()
    {
        paddleToBallVector = transform.position - paddle1.transform.position;
    }

    // Update is called once per frame
    void Update()
    {
        Vector2 paddlePos = new Vector2(paddle1.transform.position.x, paddle1.transform.position.y);
        transform.position = paddlePos + paddleToBallVector;
    }
}


Ответы (1 шт):

Автор решения: Yaroslav

Во первых перемещение на платформе делают путем присваения трансформа персонажа дочерним по отношению к платформе при колайде и обратно при окончании колайда.

Во вторых, если не знаешь почему, пиши Debug.Log() в функцию коллайда занимающуюся тем самым проигрышом, а не где-либо еще. Например Debug.Log(other.gameObject.name), чтобы убедиться, что реагирует он на персонажа, а не другой объект.

→ Ссылка