Three.js - 光源使用详解2(聚光灯 SpotLight、平行光 DirectionLight)

三、THREE.SpotLight(聚光灯光源)

1,基本介绍

  • THREE.SpotLight 是一种具有锥形效果的光源,该光源拥有产生光的方向和角度。我们可以将其与手电筒或者灯笼产生的光进行对比。
  • THREE.SpotLight 是最常使用的光源之一,特别是如果我们想要使用阴影的话。

2,属性介绍

  • angle:角度。即光源发射出的光束的宽度。单位是弧度,默认值:Math.PI/3
  • castShadow:投影。如果设置为 true,这个光源就会生成阴影。
  • color:光源颜色。
  • distance:光源照射的距离。默认值为 0,这意味着光线强度不会随着距离增加而减弱。
  • exponent:光强衰减指数。使用 THREE.SpotLight 光源,发射的光线的强度随着光源距离的增加而减弱。exponent 属性决定了光线强度递减的速度。使用低值,从光源发出的光线将到达远处的物体,而使用高值,光线仅能到达非常接近 THREE.SpotLight 光源的物体。
  • intensity:光源照射的强度。默认值:1
  • onlyShadow:仅阴影。如果此属性设置为 true,则该光源只生成阴影,而不会在场景中添加任何光照。
  • position:光源在场景中的位置
  • shadow.bias:用来偏置阴影的位置。当你使用非常薄的对象时,可以使用它来解决一些奇怪的效果。如果你看到奇怪的阴影效果,将该属性设置为很小的值(例如 0.01)通常可以解决问题。此属性的默认值为 0。
  • shadow.camera.far:投影远点。表示到距离光源的哪一个位置可以生成阴影。默认值:5000
  • shadow.camera.fov:投影视场。表示用于生成阴影的视场有多大。默认值:50
  • shadow.camera.near:投影近点。表示距离光源的哪一个位置开始生成阴影。默认值为 50
  • shadow.map.width 和 shadow.map.height:阴影映射宽度和阴影映射高度。决定了有多少像素用来生成阴影。当阴影具有锯齿状边缘或看起来不光滑时,可以增加这个值。在场景渲染之后无法更改。两者的默认值均为:512
  • target:目标。使用 THREE.SpotLight 光源时,它的指向很重要。使用 target 属性,你可以将 THREE.SpotLight 光源指向场景中的特定对象或位置。注意,此属性需要一个 THREE.Object3D 对象(如 THREE.Mesh)。
  • visible:是否可见。如果该属性设置为 true(默认值),该光源就会打开。如果设置 false,光源就会关闭。

3,基本用法

(1)创建聚光灯光源非常简单,只要指定颜色(并设置相关属性),然后添加到场景中即可。要特别注意如下几个属性:

  • castShadow:如果想要阴影,该属性要设置为 true。
  • target:该属性决定光源照射的位置。这里我们将其指向 plane 对象(地板)。

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值