盗摄一区二区三区,亚洲精品98久久久久久中文字幕,欧美日韩国产一区二区,亚洲欧洲精品一区二区三区四区

ThingJS開發(fā)者大會直播回顧(三)|ThingJS API 2.0展望發(fā)布

本期由引擎技術專家井岡介紹「ThingJS 2.0能力有哪些提升」,引擎技術專家謝帥揭秘「為什么說自研引擎T3D更適用數(shù)字孿生應用」。

image.png

ThingJS1.0 為降低3D門檻而生

2018年,ThingJS API 1.0極大地降低了3D可視化應用開發(fā)門檻!通過高度的功能封裝,其他引擎用千余行代碼實現(xiàn)的功能,在ThingJS中只用一行代碼就能搞定!不僅如此,通過簡化場景加載、自定義物體創(chuàng)建、自定義層級切換等一系列邏輯設計,讓沒有 3D 開發(fā)經驗的人,也能快速開發(fā)出自己想要的物聯(lián)網(wǎng)3D可視化應用。

隨著數(shù)字化轉型浪潮,我們希望ThingJS能提供更多樣的垂直行業(yè)場景管理能力,成為更開放的數(shù)字孿生引擎。所以,2020年底,我們開始進行2.0的研發(fā)升級,從「性能、架構、功能」三方面全面提升ThingJS2.0的靈活性,使其成為更適合于數(shù)字孿生應用的引擎。

ThingJS2.0全面進化 更適合數(shù)字孿生應用

image.png

①API2.0接口開放量創(chuàng)新高

此前1.0的接口量是700+,而2.0接口開放量超1000+,功能新增45%,并在此基礎上簡化開發(fā)邏輯,大大提升開發(fā)效率,未來還將持續(xù)新增。

②采用模塊化架構,組件級靈活擴展

API 2.0 進行了模塊化架構升級,當API功能不滿足需求時,可以很容易地通過組件、插件、預制件等方式靈活擴展。

之前,ThingJS1.0 的開發(fā)者只能自己找方法去擴展和復用功能,沒有提供推薦方式。現(xiàn)在,ThingJS2.0中提供了組件的方式,可以為物體進行擴展,自由掌控組件的生命周期;還提供了插件的方式,可以對一個獨立的功能模塊進行復用,如電梯、停車場等;還提供了預制件,可以預先準備好一個具有功能的物體模板,使用時候拿起就用。

image.png

③支持UE/Unity/WebGL渲染引擎的切換

底層我們實現(xiàn)了邏輯和渲染分離,支持UE/Unity等渲染引擎實時切換,切換后能更好的發(fā)揮各引擎獨特的能力。渲染時可以做到在UE/Unity/WebGL之間實現(xiàn)一鍵動態(tài)切換。UE/Unity采用云渲染的方式來實現(xiàn),但開發(fā)者們使用的邏輯代碼依然是ThingJS API,無需調整。

image.png
渲染引擎一鍵切換

渲染引擎T3D:WebGL端數(shù)字孿生應用最優(yōu)解

Web平臺有很多的開源引擎,如:three.js,BabylonJS,PlayCanvas,ClayGL,Oasis等,以及在CS端也有,如:Unity、UE、CryEngine、Ogre等引擎,我們對其中一些引擎做了較深入的研究和項目實踐,但發(fā)現(xiàn)這些引擎并不能完全滿足我們所面對的數(shù)字孿生可視化領域的需求。尤其因為真實世界不斷變化,物聯(lián)網(wǎng)設備每個月都在新增,快速建模,快速納管設備,對接實時數(shù)據(jù)實現(xiàn)難度很大。

這種情況下,我們結合了之前使用C++開發(fā)的引擎經驗、WebGL的開發(fā)經驗、上述引擎的使用經驗、以及項目中的實踐經驗,開發(fā)了WebGL版的T3D引擎,以便更好地服務于Web平臺的3D渲染。

image.png

T3D引擎框架

在T3D引擎的框架設計中,主要分為四層:標準封裝層,渲染邏輯層,場景資源層和擴展層。其中,標準封裝層,渲染邏輯層,場景資源層構成核心庫 t3d.js。核心庫是一個Web優(yōu)先的,最小可運行的通用圖形渲染庫。Web優(yōu)先指的是t3d.js主要基于WebGL和WebGPU作為底層繪圖標準。通用圖形渲染庫指的是t3d.js并不限定圖形渲染以外的其它邏輯,適用性與擴展性比較好。

此外,官方提供常用需求的擴展,作為第二方庫供開發(fā)者使用。至于定制化的需求,支持由開發(fā)者基于T3D開發(fā)第三方庫。

渲染引擎封裝的功能主要分為:場景樹,幾何體,材質,渲染管線。

①基于Transform Feedback特性的更強大的粒子系統(tǒng);

②節(jié)點式材質系統(tǒng);

③更加強大的WebGPURenderPass

……

目前ThingJS API 2.0處于內部試運行階段,預計將在2022年Q1發(fā)版。以下是本次完成的升級(此部分有demo演示,回放可跳轉02:21:20處觀看)

image.png

此外ThingJS API 2.0還將在接下來的一年內,持續(xù)補充以下功能:

①支持物理系統(tǒng),提供更多仿真應用所需要的能力;

②支持WebXR,讓大家可以輕松構建自己的Web端 VR 和 AR應用;

③支持節(jié)點式材質編輯器,方便大家自定義自己想要的材質效果。

未來,我們將利用升級版架構,快速支持最新的技術WebGPU,ThingJS開發(fā)者們不需要做任何的修改,就可以體驗WebGPU帶來的新的能力提升。并且在2022年底前,我們會逐步將T3D渲染引擎和ThingJS API 2.0開源,讓T3D和ThingJS加速發(fā)展,成為眾創(chuàng)引擎。

主站蜘蛛池模板: 富平县| 丽江市| 恩平市| 西丰县| 乌拉特前旗| 神农架林区| 阿克| 重庆市| 兴海县| 类乌齐县| 南木林县| 陕西省| 新巴尔虎左旗| 邯郸市| 西吉县| 淮北市| 大荔县| 永宁县| 石城县| 通化县| 宣武区| 石景山区| 醴陵市| 河北省| 南木林县| 襄樊市| 台北市| 皋兰县| 砚山县| 怀来县| 郯城县| 鄂托克旗| 西乡县| 南汇区| 乌恰县| 会宁县| 文化| 咸宁市| 太仆寺旗| 灌阳县| 松原市|