three.js Layers

2023-02-16 17:31 更新

Layers 對(duì)象為 Object3D 分配 1個(gè)到 32 個(gè)圖層。32個(gè)圖層從 0 到 31 編號(hào)標(biāo)記。 在內(nèi)部實(shí)現(xiàn)上,每個(gè)圖層對(duì)象被存儲(chǔ)為一個(gè) bit mask, 默認(rèn)的,所有 Object3D 對(duì)象都存儲(chǔ)在第 0 個(gè)圖層上。圖層對(duì)象可以用于控制對(duì)象的顯示。當(dāng) camera 的內(nèi)容被渲染時(shí)與其共享圖層相同的物體會(huì)被顯示。每個(gè)對(duì)象都需要與一個(gè) camera 共享圖層。每個(gè)繼承自 Object3D 的對(duì)象都有一個(gè) Object3D.layers 對(duì)象。

構(gòu)造函數(shù)

Layers()

創(chuàng)建一個(gè)新的圖層對(duì)象,該對(duì)象默認(rèn)與第 0 圖層關(guān)聯(lián)。

屬性

.mask : Integer

用 bit mask 表示當(dāng)前圖層對(duì)象與 0 - 31 中的哪些圖層相對(duì)應(yīng)。所屬層所對(duì)應(yīng)的比特位為 1,其他位位 0。

方法

.disable ( layer : Integer ) : undefined

layer - 一個(gè) 0 - 31 的整數(shù)。刪除圖層對(duì)象與參數(shù)指定圖層的對(duì)應(yīng)關(guān)系。

.enable ( layer : Integer ) : undefined

layer - 一個(gè) 0 - 31 的整數(shù)。增加圖層對(duì)象與參數(shù)指定圖層的對(duì)應(yīng)關(guān)系。

.set ( layer : Integer ) : undefined

layer - 一個(gè) 0 - 31 的整數(shù)。刪除圖層對(duì)象已有的所有對(duì)應(yīng)關(guān)系,增加與參數(shù)指定的圖層的對(duì)應(yīng)關(guān)系。

.test ( layers : Layers ) : Boolean

layers - 一個(gè)圖層對(duì)象。如果傳入圖層對(duì)象與當(dāng)前對(duì)象屬于相同的一組圖層,則返回 true,否則返回 false。

.isEnabled ( layer : Integer ) : Boolean

layer - 一個(gè)從0到31的整數(shù)。如果給定的層被啟用,返回true。

.toggle ( layer : Integer ) : undefined

layer - 一個(gè) 0 - 31 的整數(shù)。根據(jù)參數(shù)切換對(duì)象所屬圖層。

.enableAll () : undefined

向所有層添加成員資格。

.disableAll () : undefined

從所有層中刪除成員資格。

源代碼

src/core/Layers.js


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)