Saltar al contenido

Snapchat Web Lenses: cómo convertir tu juego HTML5 en un juego de Snapchat con PlayCanvas

abe ·

Snapchat ya ejecuta juegos web como Web Lenses, y PlayCanvas es el motor que recomienda Snap. Te explicamos las reglas, los límites, la API y el camino paso a paso desde una build web hasta una Lens publicada.

Portada de Snapchat Web Lenses: cuatro juegos web en vertical en móviles con el texto Snapchat + PlayCanvas, juego web en Snap

Las Snapchat Web Lenses (lentes web de Snapchat) te permiten coger un juego HTML5 normal, comprimir la build en un zip y publicarlo dentro de Snapchat como una Lens. Los juegos son el primer caso de uso, la función está en beta y, aunque puedes usar cualquier framework web, Snap recomienda PlayCanvas y lo utiliza en toda su documentación. En ningún momento tienes que abrir Lens Studio.

PlayCanvas anunció la compatibilidad el 23 de octubre de 2026, junto con cuatro de los primeros juegos ya publicados. Esta guía explica qué es una Web Lens, los límites estrictos que debe cumplir tu build, lo que te ofrece la Web Lens API y un camino práctico en cinco pasos desde una build web hasta un juego que los jugadores pueden encontrar por su nombre o por Snapcode.

Snapchat Web Lenses de un vistazo

Qué es Una app web empaquetada en un zip y publicada como Lens de Snapchat
Plataformas Snapchat para iOS y Android
Pantalla Pantalla completa en vertical, 9:16 (no admite horizontal)
Motor Cualquier framework web; Snap recomienda PlayCanvas
Tamaño del paquete Zip de hasta 8 MB, index.html de hasta 1 MB en la raíz del zip
Entorno de ejecución Admite WebAssembly (también multihilo), Web Workers y eval()
Sandbox Sin red, cámara, micrófono ni sensores de movimiento
Funciones de Snapchat Clasificaciones, Bitmoji y almacenamiento a través de la Web Lens API
Estado Beta; los detalles pueden cambiar

Bloom, Ball Smasher, Snake Showdown y Bitmoji Ski como Web Lenses, imagen: PlayCanvas y los respectivos creadores de los juegos

Por qué debería importarles a los desarrolladores de juegos web

Snapchat lo usan 971 millones de personas cada mes, según los resultados del segundo trimestre de 2026 de Snap, y la compañía afirma que sus Game Lenses atraen a más de 175 millones de personas al mes. Las Web Lenses abren esa audiencia a los desarrolladores web sin ficha en una tienda de apps y sin instalación: los jugadores abren un juego igual que prueban cualquier Lens.

Las primeras cifras compartidas por los desarrolladores pioneros dan una idea de lo que se puede conseguir:

Juego Estudio Género Lo que contó el desarrollador
Bloom NOWWA Puzle relajante de jardín Unos 260 segundos por sesión de media, casi un 30% vuelve al día siguiente
Ball Smasher MetaM Tiros de baloncesto callejero Prototipo en horas, millones de partidas en días
Snake Showdown Elanra Studios Batalla de serpientes 7 millones de partidas de 1,8 millones de jugadores en las primeras cuatro semanas
Bitmoji Ski Snap Arcade de esquí Creado en un día, 6 millones de impresiones al día

Para monetizar, el programa Lens+ Payouts de Snap permite a los creadores que cumplan los requisitos (mayores de 18 años y en países elegibles) marcar una Lens como exclusiva para suscriptores de Lens+ y Platinum y recibir una parte de los ingresos según la interacción. Snap también invita a los desarrolladores a presentar propuestas de juegos originales para Web Lenses y optar a financiación para desarrollarlos, con prioridad para juegos construidos en torno a un componente social como las clasificaciones.

Las reglas que tu build tiene que cumplir

La mayoría de las subidas rechazadas se deben a unos pocos errores de empaquetado, así que apréndete esto antes de escribir una sola línea del juego.

Diagrama de publicación de una Web Lens: código web, zip de 8 MB, subida, revisión y pantalla 9:16

  1. Solo vertical. Las Lenses se ejecutan a pantalla completa en 9:16. Diseña la cámara, el HUD y los botones para una sola mano desde el principio.
  2. Zip de 8 MB o menos. El límite se aplica a la subida comprimida. Tómalo como un techo, no como un objetivo: un zip más pequeño carga antes, y el tiempo hasta empezar a jugar es lo que más importa.
  3. index.html en la raíz, de 1 MB o menos. Comprime el contenido de la carpeta de la build, no la carpeta en sí. Mantén index.html como un punto de entrada ligero y no metas dentro todo el bundle ni URLs data: grandes.
  4. Rutas relativas en todas partes. Usa ./a/game.js, nunca /a/game.js, tanto en el HTML como en las llamadas fetch() en tiempo de ejecución. Con Vite, configura base: './'.
  5. Barras normales en el zip. En Windows, Compress-Archive de PowerShell escribe barras invertidas y rompe las rutas. Usa “Comprimir en archivo ZIP” del Explorador, zip -r o un script de Node con el paquete archiver, y compruébalo después con unzip -l.

Zip correcto e incorrecto para una Web Lens: index.html en la raíz frente a dentro de dist

El sandbox: lo que una Web Lens no puede hacer

Una Web Lens es autónoma. No puede acceder a la red, usar la cámara ni el micrófono ni leer los sensores de movimiento, y localStorage e IndexedDB empiezan vacíos en cada arranque. En la práctica, eso significa que:

  • Cada script, modelo, textura, fuente y sonido debe ir dentro del zip.
  • No hay llamadas de analítica, configuración remota ni backend para multijugador online.
  • El progreso debe guardarse con la función Storage de la Web Lens API.

Diagrama del sandbox de una Web Lens: red, cámara, micrófono y sensores de movimiento bloqueados; clasificaciones, Bitmoji y almacenamiento disponibles

La Web Lens API: clasificaciones, Bitmoji y almacenamiento

La API de Snap (paquete npm @snap/web-lens-api) conecta tu juego con Snapchat. Llamas a init() una vez al arrancar y compruebas isSupported() antes de usar cada función. Fuera de Snapchat, en tu escritorio o en tu servidor de desarrollo local, la API responde con un stub integrado con datos de ejemplo, así que puedes desarrollar sin móvil; eso sí, mantén el juego jugable si falta alguna función.

Función Qué hace Lo que conviene saber
Leaderboards (clasificaciones) Envía una puntuación y abre el panel de clasificación propio de Snapchat Las puntuaciones deben ser enteros; usa orden ascendente para contrarrelojes; los amigos pueden recibir un aviso cuando superas su puntuación
Bitmoji Carga el Bitmoji del jugador como un GLB 3D con rig o como imagen 2D de cabeza y hombros La URL caduca a los cinco minutos aproximadamente; los Bitmoji llegan sin animaciones; incluye siempre un personaje por defecto
Storage (almacenamiento) Un pequeño almacén clave-valor vinculado a la cuenta del jugador Cada valor es JSON de hasta 32 KiB, 100 KiB en total por Lens y jugador; guarda cuando cambie el progreso y cuando la página quede oculta

Una buena clasificación premia algo que los jugadores quieren mejorar (precisión, velocidad o supervivencia) y deja el siguiente intento a un toque de distancia. El progreso guardado merece la misma reflexión: decide qué tiene que sobrevivir a una sesión (mejor puntuación, nivel desbloqueado) y qué se puede reiniciar sin problema.

De la build web a la Lens publicada en 5 pasos

  1. Elige un flujo de trabajo. O bien PlayCanvas Engine como un proyecto JavaScript normal (ideal con un asistente de programación con IA), creado con npm create playcanvas@latest my-lens -- --starter web-lens, o bien el PlayCanvas Editor en el navegador, que puede conectarse a asistentes de IA mediante su Editor MCP Server. La plantilla inicial ya deja preparados el diseño vertical, el área segura, las rutas relativas, el empaquetado y la Web Lens API.
  2. Añade las PlayCanvas Skills (opcional). npx skills add playcanvas/skills enseña a los agentes de programación con IA compatibles a montar escenas, animaciones, HUD y efectos en PlayCanvas.
  3. Desarrolla pensando en el móvil. Mantén el HUD dentro de env(safe-area-inset-*), porque Snapchat dibuja su propio botón de cerrar cerca de la parte superior; escala el movimiento según el tiempo transcurrido (muchos móviles van a 120 Hz); inicia el audio a partir de un gesto del usuario y pausa cuando la Lens quede oculta. Importa las clases del motor por nombre para que el bundler pueda descartar el código que no se usa, comprime las texturas y prescinde de los source maps.
  4. Integra la API. Envía las puntuaciones al terminar la partida, carga un Bitmoji si lo quieres y guarda el progreso con Storage.
  5. Empaqueta, sube y envía. En un proyecto creado con la plantilla, npm run package genera el zip y lo comprueba según las reglas de Snap. Después inicia sesión en My Lenses, crea una Web Lens, sube el zip y añade un nombre, un icono PNG de 512 × 512 y un vídeo de vista previa de 5 segundos a 720 × 1280. Tras la revisión, los jugadores podrán encontrar el juego por su nombre o por Snapcode.

¿Prefieres no programar nada? Easy Lens, el creador de Lenses con IA de Snap, ya puede crear juegos Web Lens basados en PlayCanvas a partir de una descripción de texto; está disponible para suscriptores de Lens+ en Easy Lens web.

¿Qué juegos encajan mejor en una Web Lens?

Encajan bien Encajan mal
Arcade, puzles y juegos de batir puntuaciones con un solo pulgar Juegos en horizontal o con teclado y ratón
Sesiones cortas con reinicio instantáneo Sesiones largas que dependen de un servidor
Recursos pequeños y comprimidos Descargas grandes de recursos en tiempo de ejecución
Competición basada en clasificaciones Multijugador online en tiempo real

Empieza con un proyecto pequeño en el que se tarde poco desde que se abre hasta que se juega. Prueba en un móvil real los controles táctiles, los bordes de la pantalla, el audio, la pausa y el reinicio (npx vite preview --host te permite abrir la build en el navegador del móvil), y apunta cada cambio específico de la plataforma para que las actualizaciones posteriores no los deshagan.

Para los detalles oficiales, consulta la documentación de Web Lenses de Snap, los requisitos de la plataforma y el anuncio de PlayCanvas.

Preguntas frecuentes

¿Qué es una Snapchat Web Lens?

Una Web Lens es una app web que se ejecuta dentro de Snapchat como una Lens. La creas con tecnologías web, comprimes la build en un zip y la subes a través de My Lenses, sin Lens Studio.

¿Tengo que usar PlayCanvas?

No. Puedes usar cualquier framework web, pero Snap recomienda PlayCanvas y su documentación usa PlayCanvas con Vite.

¿Cuánto puede ocupar un juego Web Lens?

El zip comprimido puede ocupar hasta 8 MB, y el index.html de su raíz, hasta 1 MB. Son límites de la beta, así que revisa los requisitos actuales antes de subirlo.

¿Puede una Web Lens usar internet o servidores multijugador?

No. Una Web Lens no puede acceder a la red, así que todos los recursos deben ir incluidos y los backends de multijugador online no son una opción. Las clasificaciones llegan a través de la Web Lens API.

¿Cómo guardo el progreso del jugador?

Con la función Storage de la Web Lens API. El almacenamiento normal del navegador empieza vacío cada vez que se abre la Lens.

¿Puedo ganar dinero con un juego Web Lens?

Los creadores que cumplan los requisitos pueden unirse a Lens+ Payouts, que reparte ingresos por las Lenses marcadas como exclusivas para suscriptores de Lens+ y Platinum, y Snap acepta propuestas de juegos para financiarlos.

Artículos relacionados

Cargando juego…

VENOGAME / PLAYBOOK

Mi arena

Guardado en este dispositivo. Sin cuenta.

Toca un corazón y crea tu colección de juegos.