Mezcla4web

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 26 de julio de 2018; las comprobaciones requieren 17 ediciones .
mezcla4web
Tipo de Herramientas para gráficos 3D interactivos
Desarrollador Triunfo
Escrito en JavaScript , Python , C , C++
Primera edición 28 de marzo de 2014
ultima versión 18.05.0
Estado Activo
Licencia GPLv3 o comercial
Sitio web blend4web.com

Blend4Web  es un marco de código abierto para crear y mostrar gráficos 3D interactivos en los navegadores . Blend4Web utiliza el paquete de modelado 3D Blender de código abierto para preparar el contenido.

Desarrollado y lanzado en 2014 por la empresa rusa Triumph, que también proporciona una licencia de producto comercial (que incluye ejemplos de aplicaciones listas para usar) y servicios de soporte técnico.

Resumen

La preparación del contenido audiovisual para Blend4Web se realiza en el paquete de animación y modelado 3D de Blender . El contenido se reproduce usando WebGL , Web Audio y otras tecnologías de navegador estándar, sin el uso de ninguna extensión [1] .

El framework se distribuye bajo los términos de licenciamiento dual , bajo la GPLv3 abierta y licencias comerciales . El código fuente está en el repositorio de GitHub [2] .

La escena 3D se crea en Blender y se exporta como un archivo JSON y un archivo binario para ser cargado por la aplicación web . La escena también se puede exportar como un único archivo HTML autónomo que incluye los datos exportados, la interfaz de usuario del reproductor web y el código ejecutable [3] . La exportación en formato HTML se considera la forma más fácil de trabajar con Blend4Web [4] . El archivo resultante con un tamaño mínimo de alrededor de MB se puede colocar en una página web utilizando el elemento estándar [5] . Las aplicaciones web basadas en Blend4Web se pueden implementar en redes sociales populares como Facebook [6] y VKontakte . <iframe>

Los componentes del software Blend4Web incluyen bibliotecas de JavaScript , un complemento para Blender y un conjunto de herramientas para configurar parámetros de escena 3D, depurar y optimizar.

El desarrollo de Blend4Web fue iniciado por la empresa Triumph de Moscú en 2010. El primer lanzamiento público tuvo lugar el 28 de marzo de 2014 [7] .

Características

El marco contiene una serie de componentes que se encuentran comúnmente en los motores de juegos , incluido un sistema de posicionamiento de fuente de sonido, un motor de física ( una bifurcación del motor de física Bullet adaptado a JavaScript ), un sistema de animación y una capa de abstracción para programar la lógica del juego [8 ] .

Se pueden asignar hasta 8 animaciones de varios tipos a cada objeto, incluidas animaciones esqueléticas y de vértice. La velocidad y la dirección de la animación, así como los parámetros de los sistemas de partículas (tamaño, velocidad inicial y número) se pueden configurar a través de la API [9] .

Carga y descarga dinámica de datos, se admiten mapas de luz , es posible simular la dispersión del subsuelo [10] .

Existen soluciones para renderizar escenas al aire libre, que incluyen simulación de viento, simulación de agua, efectos atmosféricos. El trabajo de esta funcionalidad se demuestra en el video de demostración de Farm , que también contiene numerosos personajes animados que no son jugadores , la capacidad de moverse por la ubicación con una vista en primera persona, interacción con objetos y control de vehículos [11] .

Debido al uso de la tecnología WebGL entre navegadores , Blend4Web funciona en todos los principales [12] navegadores , incluidos los dispositivos móviles [13] . Sin embargo, en los navegadores con una implementación experimental del estándar WebGL, como Internet Explorer , las características de Blend4Web no son totalmente compatibles [14] . Hay aplicaciones que pueden ejecutarse en el sistema operativo Tizen , en particular, en los relojes inteligentes Samsung Gear S2 [ 15] .

Entre las características que no son triviales para los marcos de los navegadores, se denominan las siguientes: optimización mediante la combinación de llamadas de dibujo, optimización mediante el corte de objetos ocultos, realización de cálculos físicos en un hilo de ejecución separado , simulación del comportamiento de las olas del mar [16] .

En la versión 14.09, Blend4Web implementó la capacidad de implementar interactividad en escenas 3D utilizando la herramienta de programación visual . La herramienta se asemeja al editor de lógica del motor de juego integrado de Blender, en particular, como BGE, utiliza bloques lógicos visuales integrados en la interfaz de Blender. Las secuencias de animación creadas por el artista se reproducen en respuesta a la interacción del usuario con ciertos objetos 3D [17] [18] .

A partir de la versión 15.03, Blend4Web admite adjuntar elementos HTML 2D (por ejemplo, ventanas de información) a objetos 3D (las llamadas anotaciones), así como copiar objetos mientras se ejecuta la aplicación ( instanciación ) [ 19] . 

Los efectos de posprocesamiento admitidos incluyen superficies brillantes ( resplandor ), floración  , profundidad de campo de la cámara , rayos crepusculares , desenfoque de movimiento y sombreado cruzado ( SSAO ) [20] .

El soporte para dispositivos de realidad virtual se implementó a finales de 2015. El funcionamiento del casco Oculus Rift lo proporciona la API WebVR experimental . [21]

Integración con Blender

El complemento de Blender está escrito en Python y C y se puede compilar para las plataformas Linux x86/x64, OS X x64 y MS Windows x86/x64.

El perfil de configuración de Blend4Web está activado en la configuración del complemento. Cambiar a un perfil reconstruye la interfaz de Blender y elimina todas las configuraciones no admitidas al mismo tiempo [22] .

Blend4Web admite una serie de características específicas de Blender, como el editor de material de nodos (una herramienta para la programación de sombreadores visuales ) [23] y el sistema de partículas [24] . También hay soporte inicial para un editor de animación no lineal (NLA) como parte del paquete Blender para crear scripts simples.

Para obtener un resultado visual similar en el editor y en el navegador ( WYSIWYG ), se recomienda a los usuarios que cambien al modo de representación GLSL proporcionado por Blender [25] .

Comparación con sus pares

Motor de juego Blender

Al igual que el motor de juego integrado de Blender ( Blender Game Engine , BGE), Blend4Web carga datos de escena preparados por Blender sin utilizar ningún editor intermedio [4] . Las aplicaciones basadas en Blend4Web están diseñadas para ejecutarse en navegadores, mientras que los ejecutables de BGE se ejecutan fuera de los navegadores [26] [27] . Las API de Blend4Web se implementan en JavaScript , a diferencia de las API basadas en Python del motor integrado de Blender. En lugar de un editor de lógica BGE visual, que no es compatible con Blend4Web, este último asume el uso de enfoques de desarrollo web estándar.

Unidad

Unity ha podido exportar a WebGL desde la versión 5 [28] . La implementación del soporte WebGL, sin embargo, es de naturaleza experimental, en particular, en la versión WebGL, el soporte para dispositivos móviles, sistemas de posicionamiento de fuentes de sonido y texturas de video no está planeado en un futuro cercano [29] .

tres.js

La biblioteca Three.js WebGL requiere escribir código para realizar tareas triviales, lo que eleva el umbral de entrada y alarga la curva de aprendizaje; en Blend4Web, la mayor parte del trabajo de preparación de presentaciones en línea no requiere programación [30] .

Usos conocidos

La NASA ha desarrollado una aplicación web interactiva para el tercer aniversario del aterrizaje del rover Curiosity [31] . La aplicación basada en Blend4Web [32] implementa el movimiento del rover, la cámara y el control del manipulador, y reproduce algunos eventos de misión conocidos [33] [34] . La aplicación fue presentada al inicio de la sección WebGL en SIGGRAPH 2015 [35] .

Notas

  1. Blend4Web: la solución de código abierto para 3D en línea . Hacks de Mozilla. Consultado el 13 de agosto de 2015. Archivado desde el original el 4 de marzo de 2016.
  2. Blend4Web en GitHub . GitHub.com/TriumphLLC. Consultado el 11 de agosto de 2014. Archivado desde el original el 5 de mayo de 2016.
  3. Prakhov, Andrey (julio de 2015). mezcla4web. Formato Linux , página 20.
  4. 1 2 Blend4Web, un visor 3D interactivo . BlenderNation.com. Consultado el 11 de agosto de 2014. Archivado desde el original el 15 de febrero de 2016.
  5. Blend4Web: una forma de insertar contenido 3D en una página web usando WebGL (enlace descendente) . Belursus.info. Consultado el 4 de septiembre de 2014. Archivado desde el original el 26 de junio de 2015. 
  6. Modelos de Blender en Facebook . Dalai Felinto. Consultado el 11 de septiembre de 2015. Archivado desde el original el 4 de marzo de 2016.
  7. Sitio oficial de Blend4Web - Acerca del proyecto . Blend4web.com. Consultado el 13 de agosto de 2015. Archivado desde el original el 1 de julio de 2015.
  8. Se presenta Blend4Web, un motor para crear aplicaciones 3D basadas en navegador . OpenNet.ru. Fecha de acceso: 18 de junio de 2015. Archivado desde el original el 3 de marzo de 2016.
  9. Lanzamiento del motor para crear aplicaciones 3D basadas en navegador Blend4Web 14.08 . OpenNet.ru. Consultado el 13 de agosto de 2015. Archivado desde el original el 3 de marzo de 2016.
  10. La actualización de Blend4Web agrega iluminación mejorada y más . BlenderNation.com. Consultado el 13 de agosto de 2014. Archivado desde el original el 15 de febrero de 2016.
  11. La Granja . Experimentos de cromo. Consultado el 11 de septiembre de 2015. Archivado desde el original el 5 de octubre de 2016.
  12. ¿Puedo usar WebGL? . canius.com. Consultado el 15 de agosto de 2014. Archivado desde el original el 20 de abril de 2015.
  13. HTML5, la web 3D y la muerte de los complementos (enlace descendente) . 3dspace.com. Consultado el 18 de febrero de 2016. Archivado desde el original el 15 de febrero de 2016. 
  14. Blend4Web: ingeniero de navegador de aplicaciones y escenas 3D . Kaldata: Reseñas de software, hardware y juegos. Fecha de acceso: 4 de septiembre de 2014. Archivado desde el original el 3 de marzo de 2016.
  15. Carátulas 3D en tiempo real de Luxury Watches para Gear S2 . Expertos Tizen. Consultado el 12 de agosto de 2016. Archivado desde el original el 29 de septiembre de 2016.
  16. Cozzi, Patrick. Perspectivas de WebGL . Prensa CRC, 2015 ISBN 978-1-4987-1607-9 .
  17. Actualización de Blend4Web: animación no lineal y más . BlenderNation.com. Fecha de acceso: 29 de septiembre de 2014. Archivado desde el original el 31 de enero de 2016.
  18. Lanzamiento del framework Blend4Web 14.09 (enlace descendente) . digilinux.ru Consultado el 29 de septiembre de 2014. Archivado desde el original el 28 de septiembre de 2014. 
  19. Blend4web: anotaciones interactivas y autres nouveautés (enlace descendente) . Greg GdBénicourt. Consultado el 29 de mayo de 2015. Archivado desde el original el 14 de mayo de 2016. 
  20. Lanzamiento del motor para crear aplicaciones 3D basadas en navegador Blend4Web 15.05 . OpenNet.ru. Fecha de acceso: 18 de junio de 2015. Archivado desde el original el 3 de marzo de 2016.
  21. Triumph lanza Blend4Web 15.12 . cgchannel.com. Fecha de acceso: 18 de febrero de 2016. Archivado desde el original el 20 de septiembre de 2016.
  22. Blend4Web - ¡Imprescindible para los fans de Blender! (enlace no disponible) . 3ddey.com. Fecha de acceso: 29 de mayo de 2015. Archivado desde el original el 1 de junio de 2015. 
  23. Web interactiva 3D - Ist Das Die Zukunft? . 3d-magazin.eu. Consultado el 16 de septiembre de 2016. Archivado desde el original el 19 de septiembre de 2016.
  24. 3D-Web-Applicationen mit Blend4Web erstellen (enlace descendente) . entwickler.de. Consultado el 29 de mayo de 2015. Archivado desde el original el 3 de marzo de 2016. 
  25. Blend4Web: Exportador Facilement en HTML . Salón de licuadora. Fecha de acceso: 17 de julio de 2015. Archivado desde el original el 17 de julio de 2015.
  26. Blender en tu web: Blend4Web . PatrimonioVirtual.com. Consultado el 13 de agosto de 2014. Archivado desde el original el 1 de enero de 2015.
  27. Blend4Web: Ferramenta publica proyectos de Blender para Web . Alan Brito. Consultado el 29 de mayo de 2015. Archivado desde el original el 29 de junio de 2015.
  28. Unity 5 se envía y brinda exportación WebGL con un solo clic a legiones de desarrolladores de juegos . El blog de Mozilla. Consultado el 16 de junio de 2015. Archivado desde el original el 3 de marzo de 2016.
  29. Por qué la NASA cambió de Unity a Blend4Web . gamedev.net. Consultado el 11 de septiembre de 2015. Archivado desde el original el 12 de septiembre de 2015.
  30. Lo bueno, lo malo y el WebGL-y . benchung.com. Consultado el 19 de junio de 2015. Archivado desde el original el 22 de junio de 2015.
  31. Las nuevas herramientas de exploración en línea llevan el viaje de la NASA a Marte a una nueva generación . NASA. Consultado el 7 de agosto de 2015. Archivado desde el original el 15 de febrero de 2016.
  32. Experimenta la curiosidad . Los ojos de la NASA. Consultado el 7 de agosto de 2015. Archivado desde el original el 6 de agosto de 2015.
  33. Prenez le controle de Curiosity con Blend4Web (enlace descendente) . Greg GdBénicourt. Consultado el 16 de septiembre de 2015. Archivado desde el original el 19 de septiembre de 2015. 
  34. Internet 3D: Tome el Curiosity Rover para dar una vuelta a la derecha en el sitio web de la NASA . tecnología.org. Consultado el 12 de agosto de 2015. Archivado desde el original el 21 de febrero de 2016.
  35. Eventos de Khronos - 2015 SIGGRAPH . Cronos. Consultado el 13 de agosto de 2015. Archivado desde el original el 3 de marzo de 2016.

Enlaces