La tabla anterior muestra todo lo que la pila WebGL de su navegador está dispuesta a detallar sobre su GPU: cadena de proveedor, cadena de renderizador, versión, límites de textura y cuántas extensiones opcionales expuso el controlador. Escribí esta página después de una sesión de depuración nocturna en una ThinkPad T14 donde Chrome de repente informó Google SwiftShader en lugar del chip AMD integrado que sabía que estaba en la máquina. Una actualización del controlador había fallado a medias; el navegador recurrió a la renderización por software y cada demostración de mapas que abrí se ralentizó enormemente. A continuación, analizo qué significan esas cadenas, cuándo ANGLE no es un error, cómo se relaciona WebGL con WebGPU y por qué algunos sitios aún pueden averiguar una cantidad sorprendente de información sobre su hardware a partir de un lienzo.
Qué expone WebGL sobre su GPU
WebGL es una interfaz ligera de JavaScript para su GPU a través de una canalización al estilo OpenGL ES. Cuando una página crea un contexto webgl o webgl2 en un elemento <canvas>, el navegador solicita un dispositivo gráfico al sistema operativo y devuelve parámetros como MAX_TEXTURE_SIZE, MAX_RENDERBUFFER_SIZE y MAX_VIEWPORT_DIMS. Esos números enteros son límites reales: si se superan, las texturas se recortan o las asignaciones fallan.
Las cadenas legibles por humanos que interesan a los usuarios, renderizador y proveedor, provienen de dos capas. Los parámetros básicos RENDERER y VENDOR ya pueden estar enmascarados en las compilaciones centradas en la privacidad. La extensión opcional WEBGL_debug_renderer_info añade UNMASKED_RENDERER_WEBGL y UNMASKED_VENDOR_WEBGL, que se leen directamente de la pila de controladores. Así es como un sitio puede mostrar una cadena tan específica como ANGLE (AMD, Radeon RX 6700 XT Direct3D11 vs_5_0 ps_5_0) sin necesidad de instalar un binario nativo.
La herramienta no carga nada de esta información en nuestro servidor. Los valores se calculan localmente en su pestaña de la misma manera que los lee cualquier juego WebGL. Los scripts de análisis de terceros en otros sitios web son la razón habitual por la que la gente se preocupa por esta superficie de exposición, no una página de diagnóstico que usted abrió intencionadamente.
WebGL 1, WebGL 2 y el sucesor WebGPU
WebGL 1.0 sigue las especificaciones de OpenGL ES 2.0: sin retroalimentación de transformación (transform feedback), formatos de textura limitados, pero compatibilidad universal en cualquier dispositivo que aún reciba actualizaciones de seguridad en 2026. WebGL 2.0 se basa en OpenGL ES 3.0: múltiples objetivos de renderizado, texturas 3D, instanciación, objetos de búfer uniforme y un lenguaje de sombreado más estricto. La mayoría de las GPU de escritorio y los teléfonos modernos exponen WebGL 2; es posible que los WebViews de Android muy antiguos no lo hagan.
WebGPU es el sucesor natural: una API explícita de nivel más bajo inspirada en Metal, Vulkan y Direct3D 12, estandarizada por el W3C en la especificación de WebGPU. No es un sustituto directo de WebGL; motores como Three.js y Babylon.js mantienen motores de renderizado independientes. En la práctica, WebGL seguirá utilizándose durante años porque una gran cantidad de contenido y material educativo ya dependen de él, mientras que los nuevos desarrollos críticos para el rendimiento se inclinan por los sombreadores de computación de WebGPU y un control de memoria más preciso.
Cómo detecta esta página su GPU
El script del cliente crea un lienzo fuera de pantalla (off-screen canvas), solicita la versión de WebGL más alta que ofrece el navegador y luego consulta los parámetros y las extensiones exactamente como lo haría un juego en su primer inicio. Si falta WEBGL_debug_renderer_info, los campos desenmascarados permanecerán vacíos y debe asumir que el proveedor del navegador oculta intencionadamente los nombres comerciales del controlador. Si no se puede crear WebGL en absoluto, la llamada al contexto devuelve null: las causas comunes incluyen la aceleración por hardware desactivada, el acceso bloqueado a la GPU por políticas empresariales o una sesión de escritorio remoto que no redirige GL.
El recuento de extensiones es la longitud de getSupportedExtensions(). Los diferentes motores gráficos se bifurcan según nombres como OES_texture_float, EXT_color_buffer_float o OES_vertex_array_object(promocionada a núcleo en WebGL 2). Una lista larga suele correlacionarse con un controlador reciente, no con un "mejor rendimiento en juegos" por sí mismo, pero explica por qué un portátil puede ejecutar un sombreador que otro rechaza en tiempo de compilación.
Por qué podría leer ANGLE o SwiftShader en lugar de una marca de chip
ANGLE (Almost Native Graphics Layer Engine) es la capa de compatibilidad de Google que implementa OpenGL ES sobre Direct3D, Metal o Vulkan según la plataforma. En Chrome para Windows, ver ANGLE en la cadena del renderizador suele significar que su GPU real sigue estando activa; ANGLE es el traductor, no un emulador por software. El repositorio de código de ANGLE documenta las tecnologías compatibles por sistema operativo.
SwiftShader es diferente: es un rasterizador por CPU que Chromium incluye como alternativa cuando el proceso de la GPU falla, cuando la aceleración por hardware está desactivada o cuando un controlador está en una lista de bloqueo. El rendimiento disminuye drásticamente, pero las páginas siguen funcionando. Si esperaba ver un nombre de NVIDIA o AMD y ve SwiftShader, abra la configuración del navegador, confirme que la aceleración por hardware está activada y actualice el controlador de la GPU del sistema operativo antes de buscar fallos de WebGL en su propio código.
Los portátiles con doble tarjeta gráfica (Intel integrada y NVIDIA dedicada) a veces muestran Intel en WebGL mientras que la tarjeta dedicada gestiona los juegos a pantalla completa. Esto se debe a que el proceso del navegador está asignado a la GPU integrada para ahorrar energía, a menos que fuerce el modo de alto rendimiento en el panel de control del fabricante o en la configuración de gráficos del sistema operativo.
Compromisos de privacidad en torno a la huella digital WebGL
Los scripts de seguimiento combinan la cadena del renderizador, la lista de extensiones, las particularidades de precisión y los tiempos del sombreador para crear un identificador estable incluso cuando se borran las cookies. Los navegadores que priorizan la privacidad reducen esta entropía: el modo de resistencia a la huella digital de Firefox y la técnica de alteración (farbling) de Brave mienten deliberadamente o redondean los valores. Tor Browser va más allá y advierte a los usuarios antes de exponer WebGL. Estas medidas de mitigación son la razón por la que sus campos desenmascarados pueden mostrar información genérica, a pesar de que un juego AAA funcione perfectamente utilizando la ruta enmascarada.
Desactivar WebGL por completo elimina un vector de huella digital, pero inutiliza aplicaciones legítimas: Figma, Google Earth, la mayoría de los visores CAD del navegador y muchos paneles de visualización de datos. Considero WebGL como una herramienta de trabajo: déjela activada para el uso diario, refuerce el perfil de su navegador cuando realice investigaciones confidenciales y confíe en las listas de bloqueo de su navegador para neutralizar a los rastreadores conocidos en lugar de limitar su productividad.
Activar o desactivar la aceleración por hardware (cuándo es la decisión correcta)
En Chromium, abra chrome://settings/systemy asegúrese de que la opción "Usar aceleración de gráficos cuando esté disponible" esté activada, luego reinicie. En Firefox, Preferencias → Rendimiento → desmarque "Usar la configuración de rendimiento recomendada" si necesita activar o desactivar la aceleración por hardware manualmente. Safari sigue el panel de preferencias de gráficos de macOS; en Apple Silicon la GPU siempre está presente, pero el inicio de sesión remoto o el uso compartido de pantalla aún pueden alterar qué funciones se exponen a una sesión.
Si está teniendo problemas con un solo sitio web, pruebe con un perfil nuevo antes de desactivar GL globalmente. La mitad de los informes de "WebGL no funciona" que he enviado resultaron ser memorias caché de GPU dañadas o almacenes de disco de sombreadores obsoletos, que un restablecimiento del perfil soluciona más rápido que modificar configuraciones globales que luego olvidará revertir.
APIs de gráficos del navegador de un vistazo
| API | Soporte del navegador (2026) | Aceleración por GPU | Uso típico |
|---|---|---|---|
| WebGL 1.0 | Todos los navegadores modernos; los WebViews heredados de Android varían | Sí, cuando la creación del contexto tiene éxito | Contenido 3D heredado, demostraciones educativas |
| WebGL 2.0 | Chrome, Firefox, Safari, Edge en las versiones actuales del sistema operativo | Sí; recurre a SwiftShader si la GPU está bloqueada | Juegos, mapas, visualización científica, visores CAD |
| WebGPU | Versiones estables de Chrome y Edge; implementándose en Firefox y Safari | Sí; adaptadores y colas explícitos | Inferencia de ML en el navegador, motores 3D de próxima generación |
| Canvas 2D | Universal | A menudo compuesto por GPU; no es una canalización 3D completa | Gráficos, edición de imágenes, juegos de sprites |
| OffscreenCanvas | Chromium y Firefox; soporte parcial en WebKit | Igual que el worker de WebGL/WebGPU subyacente | Renderizado dentro de Web Workers sin bloquear la interfaz de usuario |
Las matrices de compatibilidad cambian trimestralmente; en caso de duda, consulte caniuse.com/webgl2 y caniuse.com/webgpu antes de tomar decisiones definitivas sobre la arquitectura.
Preguntas frecuentes
¿Cómo puede ver un sitio web mi tarjeta gráfica?
Cualquier script en la página puede crear un contexto WebGL y leer RENDERER, VENDOR y, si está permitido, las cadenas desenmascaradas de WEBGL_debug_renderer_info. Esto es así por diseño: los desarrolladores necesitan los datos para ajustar los sombreadores. El uso malicioso utiliza el mismo mecanismo con una intención diferente. Bloquear los scripts de terceros o usar un perfil de navegador protegido limita quién puede acceder a esta información.
¿Qué es ANGLE en la información de mi GPU?
ANGLE es la capa de traducción entre WebGL y la API de gráficos nativa de su sistema operativo. No es una GPU falsa; es la infraestructura que usa Chromium para que el mismo código WebGL se ejecute en Direct3D, Metal o Vulkan. Ver ANGLE junto a un modelo AMD o NVIDIA es normal en Windows. Ver SwiftShader no es normal en un portátil en buen estado y significa que se está renderizando por CPU.
¿Debería desactivar WebGL por privacidad?
Solo si su modelo de amenaza lo requiere. Desactivar WebGL elimina un vector de huella digital, pero también impide el funcionamiento de muchas aplicaciones legítimas. Las medidas de mitigación más moderadas (uBlock Origin, el modo estricto de Firefox o Tor Browser, los escudos de Brave) se dirigen a los rastreadores y conservan las funciones del sitio web principal. Yo mantengo WebGL activado y confío en el bloqueo de scripts para blogs aleatorios.
¿Cuál es la diferencia entre WebGL y WebGPU?
WebGL es una API de estilo retained-mode heredada de OpenGL ES. WebGPU es de nivel más bajo: usted gestiona los búferes, las tuberías (pipelines) y los codificadores de comandos de manera explícita, más parecida a Vulkan o Metal. WebGPU añade sombreadores de computación dedicados (compute shaders), de los que carece WebGL a menos que se abuse de los sombreadores de vértices de forma creativa. Los nuevos motores gráficos se dirigen cada vez más a WebGPU primero, manteniendo WebGL como alternativa.
¿Por qué mi GPU se muestra como Intel si tengo una tarjeta NVIDIA?
Los portátiles con tecnología tipo Optimus ejecutan el compositor de escritorio y muchas aplicaciones en segundo plano en la GPU integrada para ahorrar energía. La pestaña del navegador suele iniciarse en ella y por eso WebGL lee Intel. Forzar "Alto rendimiento" en la configuración de gráficos de Windows o en el panel de control de NVIDIA traslada Chromium a la tarjeta dedicada y las cadenas se actualizan tras reiniciar.
Herramientas relacionadas
La geometría de la pantalla complementa el trabajo de la GPU cuando está depurando el diseño: visite ¿Cuál es mi resolución de pantalla?. La identidad del navegador y la versión del motor de renderizado se muestran junto con la información del renderizador en ¿Cuál es mi navegador?. El texto sin procesar del user-agent (y las advertencias sobre las Client Hints) están en ¿Cuál es mi User Agent?. Si desea verificar que una VPN no dejó una ruta secundaria expuesta, ejecute Prueba de fuga de VPN al terminar aquí.