Buscar este blog

martes, 20 de mayo de 2014

Lanzar o Mover Objetos en Unity (Rigidbody2D, Android)

Uno de los problemas al crear mi juego fue el lanzar objetos con un Rigidbody2D, pero por suerte los foros de unity son bastante buenos y uno de los usuarios encontró la forma de lograrlo con un Script no tan complicado de analizar pero no tan fácil de crear.

Si prueban mi juego puede ver que en el tercer mundo utilizo este gran script para lograr lanzar bombas.
https://play.google.com/store/apps/details?id=com.DreamGames.Adventure

Para implementar este script se deben de hacer unas cuantas cosas antes para que funcione correctamente.
Puede bajar el script de aquí : Descargar

Bueno comenzamos por crear nuestro nuevo proyecto en unity con la opción 2d.



Al tener ya nuestro proyecto creado, arrastramos a los assets la imagen del objeto que vamos a usar en el juego para lanzar o mover con el dedo,mouse, pie, cabeza, etc.


Arrastramos nuestro script DragRigidBody2D.cs a los assets.


Arrastramos una imagen que represente el suelo para que nuestro objeto no caiga al vacío.


Arrastramos nuestra imagen del suelo a la escena, con el suelo seleccionado en nuestra escena, presionamos el botón addcomponent que esta a la derecha, luego seleccionamos la opción Physics 2D, y por ultimo seleccionamos la opción Box Collider.



Luego arrastramos nuestra imagen del objeto a lanzar a la escena. Igualmente vamos a AddComponent->Physics2d y en este caso voy a elegir Circle Colider porque mi objeto es redondo, ustedes eligen el que mas le convenga.


Luego de elegir el collider, con el objeto todavía seleccionado vamos otra vez a AddComponent-> Physics2D y luego seleccionamos la opción RigidBody2D.


Ahora necesitamos crear un Layer el cual nos indicara cuales objetos son los que se pueden lanzar o mover.
Elegimos layer-> Add Layer...
En el campo UserLayer 11 escribimos Lanzar y presionamos Enter



Seleccionamos el objeto en la scene otra vez y ahora en el apartado layer no aparece Lanazar. Le damos click en Lanzar.


Ahora seleccionamos la cámara principal de la escena y vamos a addComponent->Scripts-> y seleccionamos el script DragRigidBody2D


Con eso ya tendríamos listo nuestro objeto para poder ser lanzado.
Todos los objetos que se quiera mover o poder lanzar tienen que tener siempre el Layer lanzar seleccionado y un Rigidbody2d.

Espero haber ayudado, no olviden probar mi juego y dejar sus opiniones.
https://play.google.com/store/apps/details?id=com.DreamGames.Adventure

No hay comentarios:

Publicar un comentario