Resumen del sprint #13

# Resumen del sprint 13

¡Saludos!, quería comentarles que ya preparé la versión 2.0.92 de Pilas Engine con todas las mejoras que se implementaron durante Enero.

Estas son las novedades:

¡Nuevos ejemplos!

Como les había comentado en el sprint pasado, uno de mis objetivos en esta entrega era construir más ejemplos de lo que se puede hacer en pilas.
Hice un pequeño juego tipo Arkanoid, la mecánica básica del juego Pac-Man y algunos otros ejemplos pequeños para mostrar cómo desplazar la cámara y usar el teclado:

PilasEngine_2019-12-26_01-47-02

Si quieres mirar estos ejemplos directamente en la versión online puedes hacerlo visitando este link:

Mejorando la biblioteca de imágenes

También aumentamos la cantidad de imágenes incluidas en pilas, ahora tenemos sprites para realizar prototipos, como figuras tipo círculos y cuadrados de varios colores, personajes como fantasmas, aliens etc…

Creando funciones para atender el teclado

En versiones anteriores teníamos la posibilidad de acceder al teclado para realizar comprobaciones de movimiento muy básicas. Pero en esta versión ya incorporé el acceso al teclado por completo.

Ahora tenemos la posibilidad de crear varios personajes y controlarlos simultáneamente con el teclado, como muestra el ejemplo de dos jugadores de las naves:

687D68F7-B6F5-48A2-AEFB-B817708C4A64

O incluso acceder a los eventos de teclado sin repetición, para detectar cuando se pulsa o suelta una tecla en particular.

image

En la documentación del proyecto hay información detallada de esta mejora:

Creando sistema de mensajes

Algo que nos venía faltando en el motor era una forma sencilla de enviar y recibir mensajes de forma desacoplada. Es decir, permitiendo que los actores se puedan comunicar sin saber nada de su entorno.

En esta versión implementé un sistema de mensaje que permite que cualquier actor envíe un mensaje (como “recolecta_fruta”) y que el resto de los actores se puedan notificar de ello como si se tratara de un evento global.

Esta característica se usa mucho en el ejemplo “Arkanoid”, donde el sistema de puntajes va “contando” la cantidad de bloques que quedan en el nivel, mientras que la escena también reacciona diciéndonos si ganamos o perdemos:

Hay una explicación mucho más detallada de este sistema de mensajes en la documentación, ahí explico la motivación de un sistema de mensajes y cómo utilizarlo, con varios ejemplos:

Arreglos de bugs y actualizaciones

Aproveché a resolver algunos problemas con el cambio de tamaño de las figuras físicas. También actualicé la biblioteca multimedia Phaser a la versión 3.21.0 y adapté varios detalles de cómo accedíamos a sus propiedades.

Por último, adapté el maqueado de la aplicación para que el area de juego se pueda colapsar mucho más, y así ganar espacio para editor de texto:

image

Para el próximo sprint

Quiero incorporar un gestor de sonidos para que podamos empezar a personalizar los sonidos y músicas de los juegos. Tengo un boceto general de cómo me gustaría implementarlo, así que me voy a poner a trabajar en la implementación en estos días.

Seguramente también arme algunos ejemplos adicionales, si se les ocurren ideas avísenme !!!

¡Saludos!

2 Likes

Vamos a probar las novedades.:wink:

Genial @hugoruscitti te felicito por el trabajo arduo que le estás dando ,:heart_eyes:

Excelente es un gran trabajo…
Como parte del sonido te recomiendo que mires el editor de sonido de Godot engine,creo que es un gran ejemplo para manejar sonidos en un game engine…Saludos

Hola @hugoruscitti,¿alguna noticia sobre un nuevo sprint? o todavia queda mucho para una nueva version.

Hola @hokuto!!!, me retrasé un poquito en este sprint…

Estuve haciendo mejoras al sistema de cámaras, para que sea vea un minimapa del escenario completo y nos podamos desplazar con mayor facilidad:

image

Espero publicar novedades la semana que viene, necesitaría pulir detalles de este cambio antes de publicarlo porque es una mejora que impacta en varias partes del editor.

¡Les escribiré en breve!

2 Likes

Ok.:+1:

Te comento un par de cosas por aqui de pilas 1,en la pagina de pilas la version que se descarga es la version 1.4.3,cuando la ultima es la version 1.4.12.

Me gustaria saber si la todas las mejoras que tiene la version 2 se introduciran en un futuro en la version 1.

La pagina de pilas no se puede ver desde el movil,o mejor dicho,no puedo entrar a ningun apartado.

Por cierto ,espero que tu y tu familia esteis bien,lo digo por el problema que hay a nivel mundial.

Saludos.

Recién pude corregir el menú de la página oficial, ¿me avisas si ahora te funciona bien en celulares?

Lo he probado desde el movil y ya funciona bien.Mire todos los apartados y incluso probe la version online de pilas2 y todo perfecto.

Lo curioso es que el minijuego de naves en el movil me va muy fluido y en el ordenador me va algo lento,y eso que el movil es de los mas baratos.

Me quedé pensando en esto @hokuto, creo que puede ser a causa de que el navegador no esté pudiendo ejecutar el juego en modo webgl… pero no estoy muy seguro.

¿me ayudarías a hacer algunas pruebas?. Hice esta web con 6 links, y una demo sencilla de pilas con un indicador de cuadros por segundo:

https://prueba-de-rendimiento-pilas.surge.sh/

Necesitaría saber qué valores fps te entrega tu computadora y el móvil en cada uno de esos puntos para ver si puedo ajustar algo del motor.

Te paso un ejemplo de los valores que me tira mí en iphone 5s:

  1. 59 fps
  2. 59 fps
  3. 49 fps
  4. 60 fps
  5. 59 fps
  6. 59 fps

si llega a ser el tema de webgl, es probable que los ejemplos 5 y 6 te fallen, pero tendríamos que probar a ver si es eso o no.

Abrazo

-firefox pc
-1 42/43 fps va cambiando
-2 45/46/47 fps va cambiando-
-3 41/42 fps va cambiando
-4 47/48 fps va cambiando
-5 41/42/43 fps va cambiando
-6 47 fps

-google chrome pc
-1 16 fps
-2 15 fps
-3 51/52 fps va cambiando
-4 40/41 fps va cambiando
-5 16 fps
-6 15 fps

-google chrome movil alcatel de 60 euros
-1 62 fps
-2 62 fps
-3 55/56/57/58 fps va cambiando
-4 56/57/58/59 fps va cambiando
-5 62 fps
-6 62 fps