Colisión Unity2D, declaración if
– UnityAssets3Free
buenas , me llamo kein y hoy os traigo
esta unity pregunta
Tengo esta pieza de unityCode para verificar si un personaje está conectado a tierra.
private void FixedUpdate()
is_on_ground = false;
// The player is grounded if a circlecast to the groundcheck position hits anything designated as ground
// This can be done using layers instead but Sample Assets will not overwrite your project settings.
Collider2D[] colliders = Physics2D.OverlapCircleAll(m_GroundCheck.position, k_GroundedRadius, m_WhatIsGround);
for (int i = 0; i < colliders.Length; i++)
if (colliders[i].gameObject != gameObject)
is_on_ground = true;
¿Alguien puede explicar qué es la declaración if? if (colliders[i].gameObject != gameObject)
¿lo hace?
1 respuesta 1
Está comprobando que el colisionador actual que se encuentra en Overlap no es el gameObject en el que está activado el script.
Es bastante extraño tenerlo, ya que es una prueba de suelo para una capa específica, por lo que su objeto que está conectado a tierra probablemente no debería ser parte del suelo.
nota: si aun no se resuelve tu pregunta por favor dejar un comentario y pronto lo podremos de nuevo , muchas gracias
eso es todo,espero que te halla servido