Blend4Web
Blend4Web是用於創建和在網頁瀏覽器中顯示交互式三維計算機圖形的開源框架。
開發者 | Triumph |
---|---|
當前版本 |
|
編程語言 | JavaScript, Python, C, C++ |
類型 | 工具交互式三維圖形 |
許可協議 | GPLv3 ,商業軟件 |
網站 | www |
概述
Blend4Web 框架利用Blender編輯三維場景。內容呈現依賴WebGL、網絡音頻和其他網絡標準,無需使用插件[2]。
它具有雙重許可證,分發基於開源GPLv3以及商業許可證;源代碼託管在GitHub上[3]。
三維場景可以在Blender中準備,然後導出為一對JSON和二進制文件在網絡應用程序中加載。它也可以被導出為一個單一自包含的HTML文件,其中導出的數據,網絡播放器GUI和引擎本身被包裝在其中[4]。HTML選項被認為是使用Blend4Web的最簡單的方法[5]。生成的文件,據上報的最小大小為 1 Mb,可以使用標準 iframe HTML 元素嵌入在網頁中[6]。Blend4Web 驅動的網絡應用程序可以部署在熱門社交網站比如 Facebook 等[7]。
Blend4Web工具鏈包括JavaScript庫,Blender的插件和調整3D場景參數,調試和優化的工具集。
Blend4Web發展開始在2010年由總部設在莫斯科的公司被稱為Triumph。它首次公開發布2014年3月28日[8]
2017年底,項目創始人Yuri和Alex Kovelenov退出Triumph並開始開發新的WebGL框架Verge3D[9]。
功能
框架有大量的典型組件在遊戲引擎發現,包括定位音頻系統、物理引擎 (Bullet分叉移植到 JavaScript)、 動畫系統和遊戲邏輯編程抽象層[10]。
多達8個不同類型的動畫可以被分配到一個單獨的物體,包括骨骼動畫和每個頂點的動畫。速度和動畫的方向(向前/向後播放),以及粒子的系統參數(大小,初始速度和計數)雖然可以在API來改變[11]。
在其他支持的功能有場景數據動態加載和卸載,次表面散射模擬和基於圖像的照明[12]。
用於擴展渲染的室外環境,包括葉風相互作用、 水、 大氣和太陽光模擬存在一些的預置選項。演示這些影響的一個例子是"農場"技術演示,還設有多個動畫的 NPC 和行走能力,物體進行交互與以第一人稱模式開車[13]。
基於所述跨瀏覽器的WebGL的API,Blend4Web運行在大多數[14]的網絡瀏覽器,包括移動裝置[15]。還有一些注意事項雖然對WebGL實驗支持的瀏覽器,如Internet Explorer[16]。也有開發應用程序運行的Tizen系統設備,如三星Gear S2智能手錶[17]。
高級的功能包括繪製調用批處理、 隱藏表面測定、線程的物理模擬和海洋仿真[18]。
在14.09版本中,Blend4Web推出能添加交互性到三維場景中的可視化編程工具[19][20]。這個工具是讓人想起了Blender遊戲引擎的邏輯編輯器,因為它使用了放在Blender裡面邏輯塊。當用戶與預定義的三維物體進行交互時,它能夠播放由藝術家創作的動畫軌[21]。
自15.03版,Blend4Web已經支持HTML連接元件(如信息窗口)三維物體(「註解」)和運行時複製物體(「實例化」)[22]。
在後期處理特效,支持以下功能:發光,高光,景深,雲隙光,運動模糊和屏幕空間環境光遮蔽[23]。
自 2015年年底以來,已支持了虛擬現實設備。具體來說,Oculus Rift頭戴式顯示器工作在實驗 WebVR API[24]。基於手柄 API,軟件現在也包括初步支持遊戲手柄[25]。
Blender集成
Blender插件使用 Python 和 C 編寫,可以在 Linux x86/x64、 OS X x64 和 MS Windows x86/x64 平台上編譯。
Blend4Web 特定的配置文件可以在插件設置中激活。切換到此配置文件時,攪拌機界面更改,以便只顯示與 Blend4Web 有關的設置[26]。
Blend4Web 支持設置Blender特定節點材質編輯器 (視覺着色編程的一種工具)[27]和粒子系統[28]等的功能。還有對Blender的非線性動畫 (NLA) 編輯器的基本支持用於創建簡單的場景。
與相關的軟件的比較
Blender遊戲引擎
類似於Blender遊戲引擎 (BGE),Blend4Web從Blender場景中直接加載與播放場景數據,無需使用中間的編輯器[5]。作為一個網絡框架,它的目標是網絡瀏覽器,而BGE可執行文件必須離線運行[30][31]。它提供了它自己的 JavaScript API 有別於 BGE 基於 Python 的 API。提出一種網絡開發方法而不是邏輯塊的組合和在 BGE 使用 Python 腳本。
Unity
Unity從版本 5[32] 提供了 WebGL 的生成選項。一個Unity的遊戲開發者的一項調查進行比較這兩個引擎[33]。使用 Blend4Web 和Unity創建兩個交互基於網絡演示文稿的渦扇發動機。雖然作者指出這兩個引擎產生類似的視覺質量,Unity的 WebGL 生成文件總大小有 142 Mb(未壓縮),而 Blend4Web 導出的 HTML 文件相同的場景只有 1.8 Mb(未壓縮)。
根據他們的WebGL的路線圖,Unity 並沒有計劃在不久的將來支持移動設備,定位音頻系統和視頻紋理[34][35]。
Three.js
流行的WebGL庫,three.js所報告要求對瑣碎的任務編程,因此,要求更多的用戶能力和提供一個緩慢的學習曲線。在Blend4Web,大多數準備在線演示的工作可以在沒有任何編程下完成[36][37]。
值得注意的使用
美國國家航空航天局開發交互式網絡應用程序中稱為體驗好奇號,想慶祝三周年好奇號漫遊車在火星上着陸[38]。這基於 Blend4Web 的應用程序[39]使它能夠操作探測車,控制它的照相機和機械臂並再現了一些火星科學實驗室任務的傑出事件[40][41]。在 SIGGRAPH 2015 的 WebGL 部分開頭介紹應用[42]。
Dassault Systèmes 提出了一種交互式的賀卡,以迎接顧客即將到來的聖誕假期[43]。
綠色和平組織創建交互式三維信息圖表來支持綠色和平組織在俄羅斯的排毒運動[44]。
Tallink(頁面存檔備份,存於網際網路檔案館) 推薦其 MS 巨星船舶,允許訪問者瀏覽的這艘船的詳細信息的交互式三維演示[45]。
參考文獻
- ^ Релиз Blend4Web 17.08.
- ^ "Blend4Web: the Open Source Solution for Online 3D" (頁面存檔備份,存於網際網路檔案館). Mozilla Hacks. Retrieved 2015-08-13.
- ^ "Blend4Web on GitHub" (頁面存檔備份,存於網際網路檔案館). GitHub.com/TriumphLLC. Retrieved2014-08-11.
- ^ Прахов, Андрей (Июль, 2015). "Blend4Web". Linux Format, стр. 20.
- ^ 5.0 5.1 "Blend4Web, an Interactive 3D Viewer" (頁面存檔備份,存於網際網路檔案館). BlenderNation.com. Retrieved 2014-08-11.
- ^ "Blend4Web: способ вставить 3D-содержание на веб-страницу с использованием WebGL" (頁面存檔備份,存於網際網路檔案館). Belursus.info. Retrieved 2014-09-04.
- ^ "Blender Models in Facebook" (頁面存檔備份,存於網際網路檔案館). Dalai Felinto. Retrieved2015-09-11.
- ^ "Blend4Web Official Site - About" (頁面存檔備份,存於網際網路檔案館). Blend4Web.com. Retrieved 2015-08-13.
- ^ "Starting Up - Soft8Soft" (頁面存檔備份,存於網際網路檔案館). soft8soft.com. Retrieved 2018-08-13.
- ^ "Представлен Blend4Web, движок для создания браузерных 3D-приложений" (頁面存檔備份,存於網際網路檔案館). OpenNet.ru. Retrieved 2015-06-18.
- ^ "Релиз движка для создания браузерных 3D-приложений Blend4Web 14.08" (頁面存檔備份,存於網際網路檔案館). OpenNet.ru. Retrieved 2015-08-13.
- ^ "Blend4Web update adds improved lighting and more" (頁面存檔備份,存於網際網路檔案館). BlenderNation.com. Retrieved 2014-08-13.
- ^ "Blend4Web: "The Farm" - Demo einer kleinen virtuellen Welt" (頁面存檔備份,存於網際網路檔案館). Echt Virtuell. Retrieved 2014-09-18.
- ^ "Can I use WebGL?" (頁面存檔備份,存於網際網路檔案館). caniuse.com. Retrieved 2014-08-15.
- ^ "HTML5, the 3D Web, and the Death of Plugins" (頁面存檔備份,存於網際網路檔案館). 3dspace.com. Retrieved 2016-02-18.
- ^ "Blend4Web: енджин за създаване на браузърни 3D сцени и приложения" (頁面存檔備份,存於網際網路檔案館). Kaldata: Software, Hardware and Game Reviews. Retrieved 2014-09-04.
- ^ "Real Time 3D watchfaces from Luxury Watches for the Gear S2" (頁面存檔備份,存於網際網路檔案館). Tizen Experts. Retrieved 2016-08-12.
- ^ Cozzi, Patrick. WebGL Insights. CRC Press, 2015 ISBN 978-1-49-871607-9.
- ^ "Blend4Web Update: Non Linear Animation and more" (頁面存檔備份,存於網際網路檔案館). BlenderNation.com. Retrieved 2014-09-29.
- ^ "Выпущен фреймворк Blend4Web 14.09" (頁面存檔備份,存於網際網路檔案館). digilinux.ru. Retrieved 2014-09-29.
- ^ "Blend4Web: обзор новинки отечественного софтопрома" (頁面存檔備份,存於網際網路檔案館). Habrahabr.ru. Retrieved 2015-06-04.
- ^ "Blend4web: annotations interactives et autres nouveautés" (頁面存檔備份,存於網際網路檔案館). Greg G.d.Bénicourt. Retrieved 2015-05-29.
- ^ "Релиз движка для создания браузерных 3D-приложений Blend4Web 15.05" (頁面存檔備份,存於網際網路檔案館). OpenNet.ru. Retrieved 2015-06-18.
- ^ "Triumph releases Blend4Web 15.12" (頁面存檔備份,存於網際網路檔案館). cgchannel.com. Retrieved 2016-02-18.
- ^ "Triumph releases Blend4Web 16.08" (頁面存檔備份,存於網際網路檔案館). cgchannel.com. Retrieved 2016-09-14.
- ^ "Blend4Web – Must-Have for Blender Fans!" (頁面存檔備份,存於網際網路檔案館). 3ddey.com. Retrieved 2015-05-29.
- ^ "Interactives 3D Web – Ist Das Die Zukunft?" (頁面存檔備份,存於網際網路檔案館). 3d-magazin.eu. Retrieved 2016-09-16.
- ^ "3D-Web-Applikationen mit Blend4Web erstellen" (頁面存檔備份,存於網際網路檔案館). entwickler.de. Retrieved 2015-05-29.
- ^ "Blend4Web: Exporter Facilement en HTML" (頁面存檔備份,存於網際網路檔案館). BlenderLounge. Retrieved 2015-07-17.
- ^ "Blender en tu Web: Blend4Web" (頁面存檔備份,存於網際網路檔案館). PatrimonioVirtual.com. Retrieved 2014-08-13.
- ^ "Blend4Web: Ferramenta publica projetos do Blender para Web" (頁面存檔備份,存於網際網路檔案館). Allan Brito. Retrieved 2015-05-29.
- ^ "Unity 5 Ships and Brings One Click WebGL Export to Legions of Game Developers" (頁面存檔備份,存於網際網路檔案館). The Mozilla Blog. Retrieved 2015-06-16.
- ^ "Blend4Web vs Unity. Битва за Интернет" (頁面存檔備份,存於網際網路檔案館). Habrahabr.ru. Retrieved 2015-06-16.
- ^ "Почему в NASA отказались от Unity в пользу Blend4Web" (頁面存檔備份,存於網際網路檔案館). Habrahabr.ru. Retrieved 2015-08-13.
- ^ "WebGL Roadmap" (頁面存檔備份,存於網際網路檔案館). Unity3D.com. Retrieved 2015-08-13.
- ^ "The Good, The Bad and the WebGL-y" (頁面存檔備份,存於網際網路檔案館). benchung.com. Retrieved 2015-06-19.
- ^ "Что выбрать для 3D сайта – Three.js или Blend4Web?" (頁面存檔備份,存於網際網路檔案館). Habrahabr.ru. Retrieved 2015-07-17.
- ^ "New Online Exploring Tools Bring NASA's Journey to Mars to New Generation" (頁面存檔備份,存於網際網路檔案館). NASA. Retrieved 2015-08-07.
- ^ "Experience Curiosity" (頁面存檔備份,存於網際網路檔案館). NASA's Eyes. Retrieved 2015-08-07.
- ^ "Prenez le controle de Curiosity avec Blend4Web" (頁面存檔備份,存於網際網路檔案館). Greg G.d.Bénicourt. Retrieved 2015-09-16.
- ^ "Internet 3D: Take the Curiosity Rover for a Spin Right on the NASA Website" (頁面存檔備份,存於網際網路檔案館). Technology.Org. Retrieved 2015-08-12.
- ^ "Khronos Events - 2015 SIGGRAPH" (頁面存檔備份,存於網際網路檔案館). Khronos. Retrieved2015-08-13.
- ^ "Season's Greetings 2016" (頁面存檔備份,存於網際網路檔案館). Dassault Systèmes. Retrieved2016-09-14.
- ^ "Чистая мода - Гринпис России" (頁面存檔備份,存於網際網路檔案館). Greenpeace. Retrieved2016-09-14.
- ^ "Megastar 3D Experience" (頁面存檔備份,存於網際網路檔案館). Tallink. Retrieved 2016-09-14.