JSRUN 用代码说话

LightShadow

编辑教程

LightShadow

该类作为其他阴影类的基类来使用。

构造函数

LightShadow( camera : Camera )

camera - 在光的世界里

创建一个新的LightShadow。这不能直接调用的 - 它由其他阴影用作基类。

属性

.camera : Camera

光的世界里。这用于生成场景的深度图;从光的角度来看,其他物体背后的物体将处于阴影中。

.bias : Float

阴影贴图偏差,在确定曲面是否在阴影中时,从标准化深度添加或减去多少。

默认值为0.此处非常小的调整(大约0.0001)可能有助于减少阴影中的伪影

.map : WebGLRenderTarget

使用内置摄像头生成的深度图;超出像素深度的位置在阴影中。在渲染期间内部计算。

.mapPass : WebGLRenderTarget

使用内部摄影机生成的分布图;根据深度分布计算遮挡。渲染期间内部计算。

.mapSize : Vector2

一个Vector2定义阴影贴图的宽度和高度。

较高的值会以计算时间为代价提供更好的阴影质量。值必须是2的幂,直到给定设备的WebGLRenderer.capabilities.maxTextureSize, 虽然宽度和高度不必相同(例如,(512,1024)有效)。 默认值为(512,512)

.matrix : Matrix4

模拟阴影相机空间,计算阴影贴图中的位置和深度。存储在Matrix4中。这是在渲染期间内部计算的。

.radius : Float

将此值设置为大于1的值将模糊阴影的边缘。

较高的值会在阴影中产生不必要的条带效果 - 更大的mapSize将允许在这些效果变得可见之前使用更高的值。

如果WebGLRenderer.shadowMap.type设置为PCFSoftShadowMap,建议将“半径”保留为1,并通过减小“贴图大小”来增加“柔和度”。

请注意,如果[page:WebGLRenderer.shadowMap.type]设置为BasicShadowMap,将会无效。

方法

.getFrameExtents () : Vector2

由渲染器内部使用,用于扩展阴影贴图以包含所有视口

.updateMatrices ( light : Light ) : null

更新渲染器内部使用的摄影机和阴影的矩阵。

light --为其渲染阴影的灯光。

.getFrustum () : Frustum

获取阴影摄影机的视锥体。渲染器内部用于剔除对象。

.getViewportCount () : number

由渲染器内部使用,以获取需要为此阴影渲染的视口数。

.copy ( source : LightShadow ) : LightShadow

将source中的所有属性的值复制到该Light。

.clone () : LightShadow

克隆与此相同属性的新LightShadow。

.toJSON () : Object

序列化这个LightShadow。

JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。 大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
支付宝
9.99
无法付款,请点击这里
金额: 0
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟