A-Frame 0.2.0 – La web de realidad virtual extensible

25 junio, 2016 20:09 por

Esta es una traducción del artículo original publicado en el blog de Mozilla Hacks. Traducción por Rober Villar.

A-Frame es un framework que hace mas fácil construir contenido de realidad virtual (VR) para la web. Este proporciona:

  • La capacidad de construir escenas 3D con HTML declarativo.
  • Escenas adaptables WebVR que funcionan sin cambios en múltiples plataformas.
  • Un patrón entidad-componente-sistema que proporciona componibilidad y extensibilidad.

Después de tres divertidos meses ocupados con el desarrollo, estamos orgullosos de anunciar el lanzamiento de A-Frame version 0.2.0. El tema global de esta versión es la extensibilidad. Para que WebVR evolucione rápidamente, en un período en el que la realidad virtual (VR) está dominada por ecosistemas nativos cerrados, A-Frame necesita permitir experimentación abierta e iteración rápida. La extensibilidad inherente de A-frame permite a los desarrolladores la innovación sin permisos, haciendo de éste el sabor VR del Manifiesto Extensible Web.

*Si no estás familiarizado, lee Construye la web de realidad virtual con A-Frame.

Juegos 3D

Desde el lanzamiento

A-Frame ha recibido una respuesta muy positiva por la democratización en creación de contenido inmersivo 3D en la web. Los números:

Miembros de la comunidad que han utilizado A-Frame para algunos usos interesantes:

A-Frame también ha recibido algún uso de un nivel más alto:

Extensibilidad mejorada en A-Frame 0.2.0

A-Frame trajo el patrón entidad-componente-sistema a HTML. Todo en una escena es una entidad. Una entidad es un contenedor general de objetos que inherentemente no hace ni reproduce nada. Los componentes son contenedores reutilizables más pequeños de datos y lógica; cuando se conectan a las entidades, los componentes les proporcionan apariencia, comportamiento, y funcionalidad. Los desarrolladores pueden escribir componentes para hacer lo que ellos quieren, con acceso directo a three.js, y después compartirlos con la comunidad. Cualquier cosa que sea posible con three.js y WebGL es posible con A-Frame.

Desde el lanzamiento inicial de A-frame, hemos estado refinando en gran medida la API de componentes. Lo realizamos a través de ciclos de creación de componentes, descubriendo limitaciones en la API, y después escribiendo patches para mejorar A-Frame. Mediante pruebas internas en nuestro propio framework, fuimos capaces de descubrir obstáculos en la extensión de A-Frame:

  • La API de componentes ha sido mejorado con tipos de propiedad, configuración de esquema, y más métodos del ciclo de vida (pause, play, tick).
  • Primitivas (elementos de conveniencia como son <a-sphere>) son capaces de tomar componentes.

Además, hemos abierto más vías de escape a los desarrolladores para profundizar. Ahora pueden:

  • Definir tipos de propiedades personalizadas para componentes APIs más flexibles.
  • Registrar lenguaje de sombreado (GLSL shaders) o materiales three.js .
  • Registrar primitivas.
  • Registrar sistemas que proporcionen ámbito global y servicios a los componentes.

Lee las notas del lanzamiento de la versión completa 0.2.0 para más detalles.

Encarnación de la web extensible VR

La Web Extensible fomenta la competición saludable entre ideas y APIs. Solamente cuando emergen las ideas y las APIs están estabilizadas deberían ser estandarizadas. Es obligatorio seguir esta teoría para que la WebVR tenga éxito, de otra manera sería como si la Web llegara tarde a la fiesta cuando todas la patatas fritas ya se han comido. A-Frame es una encarnación de esas ideas.

Como se ha mencionado antes, con A-Frame se construye sobre un patrón entidad-componente-sistema, los desarrolladores pueden escribir, compartir, y conectar componentes que añaden nuevas características. Si una característica todavía no existe o no está a la altura, la comunidad puede mejorarla. El ecosistema ya cuenta con componentes integrados construidos por la comunidad que habilitan los controles gamepad, reconocimiento de voz, y física. Con este sistema de innovación a corto plazo, los desarrolladores pueden experimentar rápidamente con ideas con objeto de ayudar en el avance no únicamente de A-Frame sino también de WebVR.

Por ejemplo, Don McCurdy tieró sobre los componentes standard A-Frame en su repositorio de pruebas de A-Frame, mientras que el equipo principal A-Frame ha trabajado sobre la activación de la extensibilidad. A partir de eso, ha rediseñado y mejorado todo el sistema físico de control en A-Frame. Con esos componentes probados, vamos mejorando la colección de componentes estándar en A-Frame.

Mucha gente en la comunidad estuvo buscando una manera de interpretar elementos de texto y HTML como texturas en A-Frame. El estudiante Max Krieger tomó la iniciativa y escribió componentes para permitir el uso del elemento <canvas> como una textura que permite ajustes de texto.

También, Ben Nolan de SceneVR recientemente ha portado su código del cliente para utilizar A-Frame. Ha desarrollado componentes que permiten experiencias interactivas y multi-usuario, características que el equipo principal de A-Frame tenía como objetivo para finales de este año. Además, Ben está trabajando en un editor WYSIWYG para escenas A-Frame. Nosotros también estamos trabajando en un editor.

Este virtuoso ciclo de la comunidad habilitando características y compartiendo componentes continua siendo un beneficio enorme para el ecosistema WebVR . En lugar de diseñar lentamente a puerta cerrada, construimos A-Frame para que toda la comunidad web ayudara en el esfuerzo. Juntos probaremos muchas cosas y lentamente nos centraremos en las que funcionan.

Mirando hacia el futuro

Trabajaremos en la construcción de más demostraciones, mejorando interactividad, y mejorando el rendimiento. Una vez que el adaptador polyfill esté estabilizado, daremos a conocer rápidamente el soporte WebVR 1.0 en A-Frame.

The following two tabs change content below.

jorgev

AMO Product Manager at Mozilla
Jorge trabaja para el equipo de complementos de Mozilla, y se dedica a Mozilla Hispano y Mozilla Costa Rica en su tiempo libre. Actualmente está encargado del blog de Mozilla Hispano Labs.

Compartir artículo:

Empezar la discusión en foro.mozilla-hispano.org

  • ¡Participa!

    Firefox Friends »
    Agrega botones de Firefox en tu sitio web y comparte tu amor por Mozilla Firefox.
    Ayuda a otros usuarios en Twitter.
    Colabora con la comunidad »
    En Mozilla lo importante son las personas. Descubre cómo puedes colaborar.

    Boletín Firefox

    Suscríbete al boletín de novedades de Firefox.

  • Descargas

    Descarga los programas de Mozilla.

    Lo más visto

    cc-by-sa