Dibujo y manejo de gráficos en Canvas con JavaScript

Clase 61 de 84Curso Gratis de Programación Básica

Resumen

¿Cómo agregar un mapa al juego con Canvas?

Al incorporar Canvas a tus proyectos, abres la puerta a una infinita cantidad de posibilidades visuales. Este elemento HTML te permite crear gráficos y animaciones de manera dinámica mediante JavaScript. Hoy, exploramos cómo incluir un mapa en el juego de Mokepones utilizando esta poderosa herramienta.

¿Qué es Canvas y cómo funciona?

Canvas es una etiqueta HTML que renderiza un espacio rectangular en una página web. Esto facilita el dibujo de formas, textos e imágenes usando JavaScript. Imagina que tienes un lienzo con un sistema de coordenadas similar al plano cartesiano: el punto 0,0 se encuentra en la esquina superior izquierda y, a partir de ahí, se desplaza a lo largo de los ejes X (horizontalmente) y Y (verticalmente).

  • Ejemplo de coordenadas: Para dibujar un punto en la posición (2,1), mueve dos píxeles a la derecha y un píxel hacia abajo.

Canvas también permite dibujar no solo puntos, sino líneas, círculos y texturas más complejas que transformarán la experiencia de tu juego.

¿Cómo integrar Canvas en el código HTML?

Vamos a comenzar por añadir Canvas a nuestra estructura HTML. Insertaremos una nueva sección que contendrá este elemento:

<section id="ver-mapa">
  <h3>Recorre el mapa con tu mascota. Con tu Mokepon.</h3>
  <canvas id="mapa" width="300" height="200"></canvas>
</section>

En esta estructura, la etiqueta <canvas> tiene un ancho de 300 píxeles y un alto de 200 píxeles. Luego, estableceremos los elementos visuales en el archivo CSS y los funcionales con JavaScript.

¿Cómo configurar los estilos CSS para Canvas?

Dando estilo a nuestro Canvas, es crucial definir cómo se muestra en nuestro juego desde un aspecto visual. Podemos centralizarlo y definir un borde:

#ver-mapa {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

#mapa {
  border: 2px solid white;
}

¿Cómo obtener el contexto y dibujar en Canvas con JavaScript?

Con la estructura y el estilo listos, ahora nos enfocamos en delinear el código JavaScript para aprovechar Canvas. Primero, necesitamos un contexto de dibujo:

const sectionVerMapa = document.getElementById('ver-mapa');
const mapa = document.getElementById('mapa');
const lienzo = mapa.getContext('2d');

La variable lienzo se convierte en el área para nuestras creaciones gráficas.

¿Cómo dibujar un primer objeto en Canvas?

Realiza un primer dibujo para confirmar que todo está en orden. Dibujaremos un rectángulo en nuestra sección Canvas:

lienzo.fillRect(5, 15, 20, 40);

Esto crea un rectángulo con una posición inicial en (5,15), un ancho de 20 píxeles y un alto de 40 píxeles.

¿Cómo insertar una imagen en lugar de formas simples?

Ahora, en vez de un rectángulo, incluiremos la imagen de Capipepo, un personaje de Mokepon, como demostración del potencial de Canvas:

const imagenDeCapipepo = new Image();
imagenDeCapipepo.src = 'ruta/a/capipepo.png';

imagenDeCapipepo.onload = function() {
  lienzo.drawImage(imagenDeCapipepo, 20, 40, 100, 100);
};

Con drawImage, especificamos la imagen y las coordenadas para su despliegue.

¿Cómo continuar mejorando el juego con Canvas?

Con esta configuración de Canvas, has dado el primer paso hacia gráficas más avanzadas en tu juego. No dudes en experimentar con animaciones y event listeners para enriquecer la interactividad de los Mokepones. ¡Sigue desarrollando y aprendiendo para alcanzar nuevos horizontes!