欧美日韩国产精品,一区二区欧美日韩,欧美一区二区影视,欧美综合自拍亚洲综合图片区

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)引擎。

主站蜘蛛池模板: 北安市| 思茅市| 寻乌县| 清远市| 壤塘县| 威信县| 天等县| 昌江| 山阴县| 兖州市| 六枝特区| 个旧市| 会理县| 中方县| 虎林市| 灵丘县| 商都县| 普格县| 军事| 石门县| 垣曲县| 哈巴河县| 红安县| 荃湾区| 秦安县| 滦平县| 乐亭县| 垣曲县| 广州市| 新龙县| 黔西| 高碑店市| 绵竹市| 辽宁省| 耒阳市| 石棉县| 凌源市| 黑山县| 察隅县| 七台河市| 邵阳市|