Escenas 3D en la web

Si el último post lo dedicamos a las posibilidades de los vídeos 360º para su reproducción el web, ya sea Facebook o Youtube, hoy vamos a hablar de algunas posibilidades que tenemos de mostrar escenas 3D.

Tenemos bastantes alternativas, dependiendo de lo que queramos y nuestros conocimientos; lo más sencillo sería utlizar servicios como Sketchfab, Blend4web y Marmoset Viewer. Estas aplicaciones nos permiten añadir un modelo 3d con sus texturas, iluminación y efectos para crear escenas simples sobre todo tipo turntables, es decir, poder girar la camara alrededor de la escena 3d para verla desde cualquier ángulo.

Cada vez con más características, podemos ejecutar animaciones desde el programa de modelado o animaciones, y ejecutarlas en el visor a través de menús; en Sketchfab tenemos también la oportunidad de añadir etiquetas para ofrecer información de algún elemento en particular.

El servicio de Sketchfab es el más social, en cuanto tiene un servicio de galería donde podemos ver las escenas subidas por los usuarios y compartirlas fácilmente, o insertarlas en nuestra página web; tal y como podemos hacer en las dos herramientas.

Particularmente pienso que la calidad que ofrece Marmoset es superior al del resto de opciones, ya que la escena 3D se importa a su programa de edición de materiales, iluminación y render, lo cual nos permite un mayor grado de personalización de la escena.

Otra opción es utilizar los exportadores a HTML5 que ofrecen motores de render como Unreal Engine y Unity3D. En éste caso las escena que hemos creado en ésetos programas se exportan y pueden ser insertadas en páginas web. Los archivos resultantes suelen ser mayores, así como el tiempo de carga, pero en cambio nos permiten mayor interactividad con escenas mucho más complejas y ricas visualmente. Principalmente se usan más para juegos sencillos y presentaciones en tercera persona.

Por último en ésta lista están las escenas creadas mediante la programación en Webgl, mediante librerías tipo Three.js. En este caso tendremos la libertad total de crear nuestro motor con las especificaciones que eligamos, en cambio nos será más dificil conseguir la calidad de visualización e interactividad que las opciones anteriores.

Aunque cada vez tenemos más ejemplos del uso del 3D en la web, todavía falta tiempo para que esté perfectamente implementado; algunos navegadores sólo permiten algunas características, o directamente no ejecutan el código Webgl, que a su vez no se actualiza a menudo y tiene muchas menos opciones que su hermano mayor para desktops, el Opengl. Además, la necesidad de conocer otra herramienta de programación como GLSL para añadir las texturas, materiales y recrear el aspecto final de la escena añade complejidad al proceso.

Marmoset Viewer
Sketchfab
Blend4web
Unity3D
Unreal Engine
WebGl
Three.js