第七讲 光源处理
在X3D场景空间中,可以使用点光源节点(PointLight)、平行光源节点(DirectionalLight)和聚光性光源节点(SpotLight)来处理造型物体的光照明亮程度。
本讲就来介绍这三个节点的属性及其使用方法。
一、 点光源节点(PointLight)
PointLight 是一个点光源,它向所有的方向发射光线。光线照亮所有的几何对象,也不会被几何形体遮挡而形成阴影。其主要属性如下表所示:
属性
含义
默认值
使用说明
on
光源是否开关
True
为True时打开光源,为False时关闭光源
color
光的颜色
1 1 1
指定光的颜色,它会影响对象的实际颜色显示效果
location
光源所在的位置
0 0 0
光源的位置影响光的强弱
intensity
灯光的亮度
1
取值范围为0~1
ambientIntensity
对环境光影响程度
0
取值范围为0~1,它的值越大,对环境光影响也越大
radius
光源影响半径
100
以光源为中心的灯光效果的最大半径
attenuation
光线衰减参数
1 0 0
由三个值构成:第1个值控制光源在照明球体中亮度的一致程度,第2个值控制随着距离的增加,光线的线性衰减程度,最后1个值是控制随着距离的增加,光线的线性平方衰减程度。
简单的示例代码如下:
说明:我们先在点光源位置处构造一个与光源颜色相同的小球,然后在(3,0,0)处构造一个圆柱体。结果如下图所示,注意圆柱体的颜色。
若在光源和圆柱体之间在加一个相同圆柱体,试比较这两上圆柱体的效果。代码如下:
结果如下图所示:
|