Bibliotecas Modernas con Juegos Clásicos

Descubre cómo optimizamos PixiJS para juegos de cartas: renderizado bajo demanda, inicio del ticker tras la interacción, pausa por visibilidad y mejoras en Core Web Vitals.

18 sept 2025 • 4 min read • Q2BSTUDIO Team

Inteligencia-Artificial-

Al lanzar solitairex.io buscamos animaciones fluidas y métricas Core Web Vitals en verde. La primera versión se veía y se sentía bien pero Google PageSpeed Insights mostró una nota baja. El problema fue sutil: el bucle de renderizado de PixiJS, el ticker, se ejecutaba desde que se cargaba la página incluso antes de cualquier interacción. Esa ejecución continua de requestAnimationFrame aumentaba el uso de CPU en las pruebas de laboratorio de Lighthouse y degradaba métricas como Total Blocking Time y consumo de CPU.

PixiJS fue la elección ideal para un juego de cartas por varias razones. Proporciona renderizado 2D acelerado por GPU con WebGL y batching automático de sprites y texturas, un grafo de escenas con Containers que evita redibujar todo manualmente en cada frame, un sistema de interacción normalizado que facilita el arrastre de cartas, conciencia de resolución con autoDensity para pantallas de alta densidad y un loop predecible con app.ticker junto con un ciclo de vida de Application que simplifica el init y el resize. Todo ello nos permitió centrarnos en el diseño del juego en lugar de reinventar el renderizador y el sistema de eventos.

La corrección fue conceptualmente sencilla: no arrancar el ticker hasta que el usuario interactúe. En la práctica adoptamos estas pautas: inicializar la app con autoStart false y detener el ticker por seguridad; renderizar una sola vez cuando cambie el layout o se carguen recursos antes de interacción; arrancar app.ticker en el primer gesto del usuario, ya sea pointer, touch o teclado; y pausar el ticker cuando la pestaña esté oculta para ahorrar batería y evitar trabajo innecesario en background.

Antes de la primera interacción usamos un patrón de render on demand. Cada vez que cambia el tamaño o se completa la inicialización dibujamos una sola vez la escena con renderer.render(stage). Para manejo responsive empleamos ResizeObserver y un debounce moderado para redimensionar renderer y renderizar una vez sin despertar el loop.

Para arrancar el ticker al primer gesto añadimos listeners ligeros que se eliminan tras dispararse. Usamos pointerdown y touchstart para detectar la interacción táctil temprana y keydown para usuarios de teclado. De este modo el loop de 60fps no corre mientras el tablero está inactivo, lo que reduce CPU y mejora resultados en Lighthouse sin afectar la experiencia real del jugador.

Adicionalmente implementamos pausa por visibilidad para detener el ticker cuando document.hidden es verdadero y reanudar solo si el usuario ya ha interactuado. También limitamos la resolución en dispositivos con DPR muy alto para evitar cargar GPU innecesariamente y empleamos spritesheets y atlases para reducir cambios de textura y memoria. Cargamos audio y recursos no críticos de forma perezosa para acelerar el LCP y desactivamos filtros costosos mientras la aplicación está inactiva.

En términos prácticos el patrón resumido es: inicializar con autoStart false, renderizar bajo demanda, arrancar ticker en la primera interacción, pausar en pestañas ocultas y optimizar resolución y assets. Esto mantiene la misma experiencia para usuarios reales mientras mejora Core Web Vitals, reduce INP y ahorra batería.

En Q2BSTUDIO aplicamos estos principios en nuestros proyectos de juegos y aplicaciones interactivas y también los trasladamos a soluciones empresariales. Somos una empresa de desarrollo de software y aplicaciones a medida especializada en inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios de inteligencia de negocio y automatización de procesos. Si necesita una aplicación a medida para un producto interactivo o un sistema de visualización que combine rendimiento y buenas métricas web, podemos ayudarle. Con experiencia en ia para empresas y agentes IA desarrollamos integraciones con Power BI y soluciones de inteligencia de negocio que aceleran la toma de decisiones.

Para proyectos de software a medida visite nuestra página sobre software a medida y aplicaciones a medida y si busca potenciar soluciones con IA consulte nuestra sección de inteligencia artificial para empresas. Asimismo ofrecemos servicios de ciberseguridad y pentesting, servicios cloud en AWS y Azure y consultoría en Power BI para transformar datos en valor.

Resumen: PixiJS ofrece el rendimiento y la ergonomía necesarios para juegos de cartas y aplicaciones gráficas. Evitar trabajo invisible antes de la interacción y pausar en background son cambios pequeños con gran impacto en PageSpeed y Core Web Vitals. Si desea que implementemos estas mejoras en su producto o que adaptemos la solución a su stack, en Q2BSTUDIO podemos encargarnos del desarrollo, la integración de IA y la seguridad de extremo a extremo.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.