Video 01 - POO - Carga de nivel usando un Tileset

En esta sección se resolverán dudas relacionadas con programación de Unity, pero también se puede preguntar temas relacionados con la interfaz, con el uso de componentes entre otras cosas.

Moderator: julianmartinez16

Post Reply
User avatar
xacarana
Site Admin
Posts: 975
Joined: Fri Jan 15, 2016 6:13 pm

Video 01 - POO - Carga de nivel usando un Tileset

Post by xacarana » Thu Aug 11, 2016 5:38 pm

En este video, se podrá ver como se pueden cargar nivel desde un archivo de configuración de nivel, creado a partir de un editor de nivel.



Image
Tiled is a free software level editor. It supports editing tile layers in various projections (orthogonal, isometric, hexagonal) and also supports decorating the levels with freely positioned, rotated or scaled images or annotating them with objects of various shapes.
Sitio web de descarga del editor de mapas

http://www.mapeditor.org/

Descarga directa

Recuerden que aunque usamos las herramientas para un juego educativo, pueden dar click a la publicidad en los sitios de los autores, ya que cada click, les representa también ingresos.

https://thorbjorn.itch.io/tiled/downloa ... dOpLAFo%3d

Tiled2Unity

Es una herramienta que permite importar el nivel diseñado en Tiled Map a Unity

Sitio web del autor y del proyecto

http://www.seanba.com/tiled2unity

Descarga directa

https://seanba.itch.io/tiled2unity/down ... AroZvHU%3d

Adicionalmente, es necesario tener preparado un tileset, es decir una imagen con el arte del juego en formato de tiles, un tile es una imagen similar a una baldosa, la cual esta diseñada especialmente para ser repetida en un escenario. En una busqueda, encontré el siguiente set de recursos que nos va a funcionar para realizar los videos del juego de Tower Defense.

Image

Image

http://lpc.opengameart.org/static/lpc-s ... ssets.html

//http://giphy.com/gifs/baseball-fail-fal ... TJfk5cAIwg
//http://giphy.com/gifs/fail-baseball-Gzyq5CvEDVcuA
Andrés Bedoya Tobón
Profesor
"I only smile in the dark, I only smile when it's complicated" Raybiez

User avatar
CalleSantiago
Posts: 80
Joined: Tue Jan 19, 2016 10:38 am

Re: Video 01 - POO - Carga de nivel usando un Tileset

Post by CalleSantiago » Sun Aug 28, 2016 8:58 pm

Buenas noches, ¿Alguien sabe cómo organizar la cámara para que quede del tamaño del nivel? Gracias! :D
Santiago Calle R.
Programación orientada a objetos.
Image

User avatar
xacarana
Site Admin
Posts: 975
Joined: Fri Jan 15, 2016 6:13 pm

Re: Video 01 - POO - Carga de nivel usando un Tileset

Post by xacarana » Mon Aug 29, 2016 9:27 am

Claro, en el video 2, explico como se hace. ;)
Andrés Bedoya Tobón
Profesor
"I only smile in the dark, I only smile when it's complicated" Raybiez

User avatar
Juanma1008
Posts: 29
Joined: Tue Jul 18, 2017 4:12 pm

Re: Video 01 - POO - Carga de nivel usando un Tileset

Post by Juanma1008 » Mon Jul 31, 2017 7:28 pm



Codigo unidad:

Code: Select all

public class Unidad : MonoBehaviour
{

    public GameObject ruta;
    private int indice;
    private Vector3 posicion_siguiente;
    private float vel=1;
    private float distancia_punto=0.5F;


     void Start()
    {
        posicion_siguiente=ruta.transform.GetChild(0).position;
    }

    void Update()
    {
        Vector3 dir = posicion_siguiente - this.transform.position;
        this.transform.position += dir * vel * Time.deltaTime;

        if(dir.magnitude <= distancia_punto)
        {
            if(indice+1 < ruta.transform.childCount)
            {
                indice++;
                posicion_siguiente = ruta.transform.GetChild(indice).position;
                Debug.Log("xs" + posicion_siguiente.x + "ys" + posicion_siguiente.y);

            }
            
        }
        

    }
  }
Codigo torre:

Code: Select all

public class Torre : MonoBehaviour {
    public GameObject enemigo;
    private float distancia_umbral= 4;

	// Use this for initialization
	void Start () {
		
	}
	
	// Update is called once per frame
	void Update () {
        float dist = (enemigo.transform.position - this.transform.position).magnitude;

        if (dist <= distancia_umbral)
        {
            Debug.DrawLine(this.transform.position, enemigo.transform.position, Color.blue);
        }
	}
}

User avatar
Juanma1008
Posts: 29
Joined: Tue Jul 18, 2017 4:12 pm

Re: Video 01 - POO - Carga de nivel usando un Tileset

Post by Juanma1008 » Mon Jul 31, 2017 8:22 pm

Ya solucioné ambos problemas, los dos radicaban en que los puntos de la ruta estaban en un punto Z diferente a la torre y la unidad, al ubicarlos (con la vista 3D) en el mismo punto Z ambos errores se corrigieron. :D

Post Reply