Curso de Unity 3D | Puzzle con RayCast

Curso de Unity 3D

3.  
11.  
14.  
15.  
34.  

Por 9.99€ al mes tendrás acceso completo a todos los cursos. Sin matrícula ni permanencia.

Para que funcionen los rayos, cada pieza con la que va a colisionar el rayo debe tener un BoxCollider.

Pasos en la realización del videojuego Puzzle con RayCast

Seleccionar una pieza (lanzar un rayo 2D y 3D)

while(premium == false) verCodigo = false;

Para poder ver el código fuente, accede o suscríbete.

Suscríbete

Mover pieza con RayCast

while(premium == false) verCodigo = false;

Para poder ver el código fuente, accede o suscríbete.

Suscríbete

Explicación del método mover pieza.

Un rayo es infinito. Nos interesa mover la pieza al punto correcto de profundidad; por eso utilizamos la variable longitudRayo.

limiteRayo será el segmento que va desde la cámara, hasta el punto en que colisionamos con el bounding box de la pieza. Sin embargo, si la pieza tiene profundidad z=0, la bounding box tendrá una profundidad diferente y cada vez que llamemos a moverPieza() cambiaremos su ubicación, porque el origen de coordenadas de la pieza no coincide con el punto de impacteato, y la pieza se desplazará.

Unity 3D bounding box

Poner las piezas que se están moviendo por delante

while(premium == false) verCodigo = false;

Para poder ver el código fuente, accede o suscríbete.

Suscríbete

Arrastrar y soltar

while(premium == false) verCodigo = false;

Para poder ver el código fuente, accede o suscríbete.

Suscríbete

Comprobar si he dejado la pieza en la posición correcta

Tendré dos listas de piezas: fichasMoviles (que serán las que el usuario desplazará) y fichasSolución (cuyo componente SpriteRenderer desactivaré para que no se vean y que contendrá las piezas en su ubicación final).

while(premium == false) verCodigo = false;

Para poder ver el código fuente, accede o suscríbete.

Suscríbete

Detectar cuando el puzzle está completo

while(premium == false) verCodigo = false;

Para poder ver el código fuente, accede o suscríbete.

Suscríbete

Desordenar piezas

while(premium == false) verCodigo = false;

Para poder ver el código fuente, accede o suscríbete.

Suscríbete

Desordenar piezas al cabo de un tiempo

Creamos el atributo global permitirJugar para que si el jugador pulsa sobre una pieza antes de que estas se desordenen no sea tenido en cuenta en el recuento de piezas movidas correctamente.

while(premium == false) verCodigo = false;

Para poder ver el código fuente, accede o suscríbete.

Suscríbete

Por 9.99€ al mes tendrás acceso completo a todos los cursos. Sin matrícula ni permanencia.