3D
En el Navegador
Los
gráficos 3D, bien empleados, pueden ser una buena herramienta de marketing, ya
que permiten mejorar el diseño, exponer los productos en venta o crear efectos
sorprendentes que guíen a los usuarios hacia los objetivos de conversión.
A lo largo
de la historia de la Web han ido surgiendo distintas tecnologías propietarias y
abiertas que podían mostrar gráficos en 3D (3DXML, VRML, X3D, Flash,
Silverlight, Java, etc.), pero nunca ninguna a llegado a ser soportada por
todos los navegadores, obligando a los usuarios a instalar plugins. Esto hacía
que la tecnología 3D fuera bastante molesta, ya que pedirle al usuario que
instalara un plugin, era lo mejor que podías hacer para que abandonara la
página. Esto se tuvo un cambio con la aparición de Windows 8.1, debido a que
trae Internet Explorer 11 y éste permite hacer uso de una tecnología 3D llamada
WebGL.
WebGL
es
una especificación estándar que está siendo desarrollada actualmente para
mostrar gráficos en 3D en navegadores web. El WebGL
permite mostrar gráficos en 3D acelerados por hardware en páginas web, sin la
necesidad de plug-ins en
cualquier plataforma que soporte OpenGL 2.0 u OpenGL ES 2.0.
Técnicamente es un API para javascript que
permite usar la implementación nativa de OpenGL ES 2.0 que será incorporada en
los navegadores. WebGL es gestionado por el consorcio de tecnología sin ánimo
de lucro Khronos Group .
WebGL
creció desde los experimentos del canvas 3D comenzados por Vladimir Vukićević
en Mozilla. El primero mostró un prototipo de Canvas 3D en 2006. A finales de
2007, tanto Mozilla como Opera habían
hecho sus propias implementaciones separadas. A principios de 2009 Mozilla y
Khronos formaron el WebGL Working Group (Grupo de Trabajo del WebGL). El Grupo
de Trabajo del WebGL incluye Apple, Google, Mozilla, y Opera, y WebGL
ya está presente en las builds de Mozilla Firefox, Mozilla Fennec, Google Chrome y también
en la versión de Safari incorporada en OS X Lion (Safari 5.1).
Notables
primeras aplicaciones de WebGL incluyen Google Maps y Zygote
Body.
*WebGL está
basado en OpenGL ES 2.0 y
proporciona una API para
gráficos 3D. Se utiliza el elemento canvas HTML5 y se accede mediante
interfaces Document Object Model. Gestión de memoria automática se proporciona
como parte del lenguaje JavaScript.
*WebGL
carece de las rutinas matemáticas matriz eliminadas en OpenGL 3.0. Esta
funcionalidad debe ser proporcionada por el usuario en el espacio de código
JavaScript; este código necesario se complementa con frecuencia con una
biblioteca de matriz tal como glMatrix, TDL, o MJS.
Actualmente
es soportado en Google Chrome, Internet Explorer (versión 11) y Mozilla Firefox
aunque también funciona con limitaciones en Opera browser y en Safari bajo el
sistema operativo de Apple para computadoras de escritorio. Como WebGL es una
tecnología diseñada para trabajar directamente con el GPU (unidad de
procesamiento gráfico) es difícil de codificar en comparación con otros
estándares web más accesibles
Las escenas
WebGL se pueden crear sin necesidad de programación utilizando una herramienta
de creación de contenidos, como Blender o con Autodesk Maya. Las
escenas luego se exportan a WebGL. Esto fue posible por primera vez con Inka3D,
un plugin de exportación WebGL para Maya. También hay servicios para publicar
contenido en línea 3D interactivo utilizando WebGL como p3d.in y Sketchfab.
Unity Engine permite crear contenido (Videojuegos, apps, etc) para navegadores
usando WebGL.
Como WebGL
está diseñado para ejecutar en el lado del cliente con las operaciones de
renderización pesadas realizadas por los usuarios en el GPU de la computadora,
su código fuente puede ser relativamente fácilmente embebido en, por ejemplo,
un microcontrolador PIC, o
cualquier otro con la implementación de la pila TCP / IP, de modo que el
microcontrolador actuará como servidor web y el resto de tareas se
desarrollarán en el lado del cliente.
No hay comentarios:
Publicar un comentario