W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
多細(xì)節(jié)層次 —— 在顯示網(wǎng)格時,根據(jù)攝像機(jī)距離物體的距離,來使用更多或者更少的幾何體來對其進(jìn)行顯示。
每一個級別都和一個幾何體相關(guān)聯(lián),且在渲染時,可以根據(jù)給定的距離,來在這些級別對應(yīng)的幾何體之間進(jìn)行切換。 通常情況下,你會創(chuàng)建多個幾何體,比如說三個,一個距離很遠(yuǎn)(低細(xì)節(jié)),一個距離適中(中等細(xì)節(jié)),還有一個距離非常近(高質(zhì)量)。
const lod = new THREE.LOD();
//Create spheres with 3 levels of detail and create new LOD levels for them
for( let i = 0; i < 3; i++ ) {
const geometry = new THREE.IcosahedronGeometry( 10, 3 - i )
const mesh = new THREE.Mesh( geometry, material );
lod.addLevel( mesh, i * 75 );
}
scene.add( lod );
創(chuàng)建一個新的 LOD.
共有屬性請參見其基類Object3D。
LOD 對象是否由渲染器每幀自動更新。如果設(shè)置為 false,您必須自己在渲染循環(huán)中調(diào)用 LOD.update()。默認(rèn)為真。
用于檢查給定對象是否為 LOD 類型的只讀標(biāo)志。
一個包含有l(wèi)evel objects(各層次物體)的數(shù)組。
每一個層級都是一個對象,具有以下兩個屬性: object —— 在這個層次中將要顯示的Object3D。
distance —— 將顯示這一細(xì)節(jié)層次的距離。
hysteresis —— Threshold used to avoid flickering at LOD boundaries, as a fraction of distance.
共有方法請參見其基類Object3D。
object —— 在這個層次中將要顯示的Object3D。
distance —— 將顯示這一細(xì)節(jié)層次的距離。
hysteresis —— Threshold used to avoid flickering at LOD boundaries, as a fraction of distance. Default 0.0.
添加在一定距離和更大范圍內(nèi)顯示的網(wǎng)格。通常來說,距離越遠(yuǎn),網(wǎng)格中的細(xì)節(jié)就越少。
返回一個LOD對象及其所關(guān)聯(lián)的在特定距離中的物體。
Get the currently active LOD level. As index of the levels array.
獲得第一個比distance大的Object3D(網(wǎng)格)的引用。
在一條投射出去的Ray(射線)和這個LOD之間獲得交互。 Raycaster.intersectObject將會調(diào)用這個方法。
使用這個方法,為LOD對象中的每個細(xì)節(jié)層次創(chuàng)建一個JSON結(jié)構(gòu)。
基于每個level中的object和camera(攝像機(jī))之間的距離,來設(shè)置其可見性。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: