溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何進(jìn)行開源objTo3d-tiles的簡(jiǎn)單分析

發(fā)布時(shí)間:2021-12-28 12:02:00 來(lái)源:億速云 閱讀:237 作者:柒染 欄目:大數(shù)據(jù)

如何進(jìn)行開源objTo3d-tiles的簡(jiǎn)單分析,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。

objTo3d-tiles工具。  
大概看了一下工具的內(nèi)容,后邊看了一下源代碼,根據(jù)其中的樣例數(shù)據(jù),進(jìn)行了測(cè)試,并將數(shù)據(jù)加載到cesium中進(jìn)行了觀看。
簡(jiǎn)單的對(duì)其中代碼和功能進(jìn)行一些分析。
3dtiles中的模型格式是b3dm/i3dm等,代碼中是需要先把obj格式的模型轉(zhuǎn)換成以上格式,gltf又是  b3dm  /  i3dm的重要組成部分,所以,工具是先將obj轉(zhuǎn)換成gltf/glb,根據(jù)  Batched3DModel的說(shuō)明,將gltf/glb上添加相應(yīng)的BatchTable和FeatureTable信息,組合成b3dm/i3dm文件。
有了b3dm/i3dm的文件,還需要在tileset.json中添加模型的文件坐標(biāo)信息和轉(zhuǎn)換信息,其中,模型的boundingVolume分成三種形式:region、box和sphere,這個(gè)需要根據(jù)模型的實(shí)際尺寸,在Cesium中進(jìn)行計(jì)算。
關(guān)鍵的實(shí)現(xiàn)代碼:
createGltf.js、createB3dm.js、createSingleTileset.js、getBufferPadded8Byte.js、getJsonBufferPadded8Byte.js
tileset.json中設(shè)置了transform的轉(zhuǎn)換信息,因?yàn)槟P偷淖陨碜鴺?biāo)系一般是YUP,所以,到三維場(chǎng)景中,需要一個(gè)坐標(biāo)的轉(zhuǎn)換,在有些3dtiles生成的工具,通常把這個(gè)轉(zhuǎn)換集成到b3dm/i3dm文件中。
多個(gè)模型文件需要把tileset.json進(jìn)行合并,combineTileset.js中實(shí)現(xiàn)了此功能。
obj轉(zhuǎn)換成gltf/glb,有時(shí)會(huì)存在轉(zhuǎn)換問(wèn)題,可以使用其他工具,提前轉(zhuǎn)換成gltf/glb,再修改代碼,進(jìn)行集成生成。
這樣制作的3dtiles合并了多個(gè)三維模型,數(shù)量多了,在性能上還是會(huì)存在一些問(wèn)題,優(yōu)化性能還需要從模型的lod和數(shù)據(jù)索引方面進(jìn)行修整。

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI