My GameObject начинает отдыхать на полу. isKinematic имеет значение true, а триггер установлен на true на коллайдере окна.GameObject не обнаруживает столкновение с полом
Когда игрок касается коллайдера. Он перемещает GameObject ниже, чтобы полать. Затем я устанавливаю isKinematic равным false, а триггер - false. Это заставляет игровой объект падать, пока он не достигнет пола и не остановится. Моя проблема заключается в том, что игровой объект попадает в пол и останавливается. Я не могу заставить GameObject признать, что он столкнулся с полом. У меня есть команда Debug.Log в OnCollisionEnter2D и OnCollisionStay2D. Debug.Log не появляется на консоли при касании. Почему это?
В GameObject есть ригидный корпус и коллайдер. На полу есть коробчатый коллайдер и Rigidbody.
void OnTriggerEnter2D(Collider2D other)
{
if (other.gameObject.tag == "Player")
{
Debug.Log ("Player is touching the section");
//sectionRigidbody.isKinematic = true;
if (readyToDrop == false)
//moves player
transform.position += newPosition;
readyToDrop = true;
sectionRigidbody.isKinematic = false;
sectionBoxCollider.isTrigger = false;
sectionRigidbody.collisionDetectionMode = CollisionDetectionMode2D.Continuous;
//sectionRigidbody.isKinematic = true;
}
}
void OnCollisionEnter2D(Collider2D col)
{
if (col.gameObject.tag == "Floor")
{
Debug.Log ("section is touching the floor");
}
}
void OnCollisionStay2D(Collider2D col)
{
if (col.gameObject.tag == "Floor")
{
Debug.Log ("section is touching the floor");
}
}
Поместите весь свой Debug.Log за пределы инструкции тега if, затем проверьте снова – Programmer
переместил его на улицу и все еще ничего @Programmer –
Опубликовать screeenshot компонентов, прикрепленных к объекту GaemObject. – Programmer