Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

284
Visualizações
La animación Phaser no funciona en dispositivos de pantalla táctil. (funciona bien en el escritorio)

Tengo estas animaciones en mi juego phaser.js:

 this.anims.create({ key: 'catchingUp', frames: this.anims.generateFrameNumbers('android', { start: 0, end: 4}), frameRate: this.frameSpeed * 6, repeat: 0 }); this.anims.create({ key: 'catchingDown', frames: this.anims.generateFrameNumbers('android', { start: 5, end: 9}), frameRate: this.frameSpeed * 6, repeat: 0 }); this.anims.create({ key: 'topTop', frames: this.anims.generateFrameNames('androidTopTop', { start: 0, end: 9}), frameRate: this.frameSpeed * 6, repeat: 0 }); this.anims.create({ key: 'downUp', frames: this.anims.generateFrameNumbers('androidUpDown', { start: 0, end: 4}), frameRate: this.frameSpeed * 6, repeat: 0 });

Solo la animación con la tecla downUp hacia arriba funciona bien en todos los dispositivos, es el único en el que el sprite solo mueve su brazo y no va de un lado al otro. Las animaciones con las teclas catchingUp y catchingDown hacen que aparezca un rectángulo negro en la pantalla en lugar de mi sprite; en teléfonos y tabletas, a pesar de funcionar bien en la computadora portátil. Pensé que el problema eran las animaciones en sí mismas, porque el personaje salta varios cuadros, así que hice otra animación topTop , con el mismo problema. Luego pensé en poner todas las animaciones en una sola hoja de sprites, pero eso solo provocó que todas fueran un triángulo negro, incluida la animación 'downUp', que por sí sola funcionó bien.

He visto a alguien más haciendo una pregunta similar aquí y se les recomendó usar this.anims.generateFrameNames en lugar de this.anims.generateFrameNumbers , así que lo hice. Igual, funcionó bien en el escritorio, triángulo negro en todas partes.

Antes, cuando usaba imágenes no animadas, en lugar de animaciones, funcionaba bien en todos los dispositivos.

El juego en su estado actual se puede encontrar en https://chylinski82.github.io/androidCoop/ y todo el código en https://github.com/chylinski82/androidCoop , las animaciones están en Level.js y son llamado desde basketUpRight.js, basketUpLeft.js, basketDownRight.js, basketDownLeft.js.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

El problema parece ser el width de tu sprite. Si divide su sprite en varias líneas, digamos 4 líneas, las dimensiones serían 2400 x 1000 en lugar de 9000 x 250 y esto funciona en Android (por cierto, el ancho de 4500, tampoco funciona).
(No pude probarlo en iPhoneOs, pero supongo que este es el mismo problema)

No pude averiguar (todavía) , cuál es el límite de width exacto, pero sé que hay algunos problemas con los sprites de ancho, que tienen un width grande.

Actualización: lo acabo de probar en Android 12, el width y el height están limitados para animaciones de sprites a 4096px , lo acabo de probar.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda