three.js LightProbe

2023-02-16 17:42 更新

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

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

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

例子

WebGL / light probe

WebGL / light probe / cube camera

構造函數(shù)

LightProbe( sh : SphericalHarmonics3, intensity : Float )

sh - (可選)一個SphericalHarmonics3的實例。
intensity - (可選)光照探針強度的數(shù)值。默認值為1。

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

屬性

請參閱基本 Light 類以了解常用屬性。 color 屬性當前未做評估,因此不生效。

.isLightProbe : Boolean

只讀標志,用于檢查給定對象是否屬于 LightProbe 類型。

.sh : SphericalHarmonics3

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

方法

有關常用方法,請參閱基 Light 類。

源碼

src/lights/LightProbe.js


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

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號