three.js LightProbe

2023-02-16 17:42 更新

光照探針是一種在3D場(chǎng)景中添加光源的另一種方法。與經(jīng)典光源(平行光、點(diǎn)光、聚光)不同, 光照探針不發(fā)光。相反,光照探針存儲(chǔ)著有關(guān)穿過3D空間的光線的信息。 渲染過程中,通過使用來自光照探針的數(shù)據(jù),來逼近打到3D物體上的光線。

光照探針通常從(輻射)環(huán)境貼圖中創(chuàng)建。 LightProbeGenerator 類可以根據(jù) CubeTexture 或 WebGLCubeRenderTarget 的實(shí)例來創(chuàng)建光照探針。 但是,光照估算數(shù)據(jù)同樣可以以其他形式提供,例如,通過WebXR。 這將能夠渲染可對(duì)真實(shí)世界的光照做出反應(yīng)的增強(qiáng)現(xiàn)實(shí)內(nèi)容。

three.js中,當(dāng)前的探針實(shí)現(xiàn)支持所謂的漫反射光照探針。 這種類型的光照探針功能上等效于輻照環(huán)境貼圖。

例子

WebGL / light probe

WebGL / light probe / cube camera

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

LightProbe( sh : SphericalHarmonics3, intensity : Float )

sh - (可選)一個(gè)SphericalHarmonics3的實(shí)例。
intensity - (可選)光照探針強(qiáng)度的數(shù)值。默認(rèn)值為1。

創(chuàng)建一個(gè)新的 LightProbe 。

屬性

請(qǐng)參閱基本 Light 類以了解常用屬性。 color 屬性當(dāng)前未做評(píng)估,因此不生效。

.isLightProbe : Boolean

只讀標(biāo)志,用于檢查給定對(duì)象是否屬于 LightProbe 類型。

.sh : SphericalHarmonics3

光照探針使用球面諧波(spherical harmonic)來編碼光照信息。

方法

有關(guān)常用方法,請(qǐng)參閱基 Light 類。

源碼

src/lights/LightProbe.js


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

掃描二維碼

下載編程獅App

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

編程獅公眾號(hào)