
SFM灯光设置全面指南 前言 本指南将详细介绍SFM中所有灯光设置,从强度开始,到边缘高度结束。颜色设置因易于理解,变换设置因无实际作用,故不在本指南解释范围内。 本指南所涉及的各项设置功能均为个人理解。部分设置功能未知,目前尚无定论。 请注意,许多灯光设置对标准灯光无效,而是专用于【超级灯光】。超级灯光是一个非常复杂的主题,具有其独特的“特性和功能”,我会在本指南中深入探讨。凡提及超级灯光之处,请参考本指南相关内容。 祝您使用愉快。强度 强度是较基础的设置之一。数值越高,灯光越亮;数值越低,灯光越暗。这个设置没有太多复杂的内容。

环境光强度 根据我使用SFM四年的经验以及询问他人的结果,似乎没人知道这个参数的作用。直接忽略环境光强度即可。 注:在S2FM中该参数确实有实际作用,但这里暂不展开说明。此滑块也无法重新映射,不过这并不重要。 水平视野和垂直视野 这个也很简单。水平视野描述光源的水平直径,垂直视野描述光源的垂直直径。大多数情况下,这两个值保持相等会产生圆形光源,但如果需要,你也可以通过调整这两个值来制作椭圆形光源。这两个数值也可以通过简单地将灯光从动画集编辑器拖到视口中,并像操作相机一样移动它来更轻松地进行调整。

半径 半径设置会改变点光源的“大小”。从本质上来说,它是在模拟更大的光源。 例如,低半径的光源可以类比为手电筒。高半径的光源则更类似于聚光灯。这两者最大的区别在于阴影会变得不那么生硬,随着半径增大,阴影会逐渐变得平滑并形成尖端。


由于半径实质上是改变点光源的“大小”,因此它也会使光线环绕物体,从而产生更柔和的外观。

这对于主光源非常有用,主光源需要较柔和的阴影,而轮廓光则不同,其明亮且有光泽的边缘很重要。 阴影过滤大小 与半径不同,阴影过滤大小不会扭曲阴影的形状,只会影响阴影的边缘。较低的值会产生更锐利的边缘,较高的值则会产生更柔和的边缘。 较高的阴影过滤大小和较高的半径之间的关键区别在于,阴影过滤大小不会导致光线“环绕”物体,也不会导致阴影随着距离增加而变窄。

阴影衰减:阴影衰减指的是光源所产生的阴影的暗度。数值越低,阴影越暗;数值越高,阴影越亮。

注意:此滑块无法重新映射 最小距离和最大距离 这两个参数比较特殊。从表面上看,它们只是改变物体被光线照亮时与光源之间的最小和最大距离。
不过这里有几点需要注意。有时你可能会发现某些区域明明超出了最小和最大距离的范围,却仍然被照亮。这是因为Source Filmmaker(SFM)的光照机制是:只要物体的任何一部分在光照范围内,整个物体就会被正常照亮。 如果你观看上述视频,会发现桌子只有在最小距离边界完全移过整个桌子,使得桌子的任何部分都不在光照范围内时,才会变暗。如果你不喜欢这种效果,可以将灯光改为超级灯光(Uber light),不过这里就不展开讨论了。 constantAttenuation(恒定衰减)、linearAttenuation(线性衰减)、quadraticAttenuation(二次衰减) 在SFM中,灯光默认从光源处开始亮度最高,然后随着与光源距离的增加而逐渐变暗。这3个设置会改变该功能的工作方式。 默认情况下,Source Filmmaker(SFM)中的灯光是二次方衰减的,这意味着随着距离的增加,光线会变得越来越暗。【恒定】设置更像是一个切换按钮而非滑块,要么设为恒定,要么不设。

当你将灯光设置为恒定模式时,你会发现灯光变得异常明亮。这是因为光源处的亮度现在就是整个灯光的亮度,所以你需要大幅降低灯光的亮度。 与二次衰减不同,线性衰减会使灯光以稳定的速率而非递增的速率减弱亮度。增加此滑块只会提高灯光亮度的衰减速率。不过,大多数情况下,这种效果与强度调整难以区分。
二次衰减:二次衰减的工作方式与线性衰减相同,但光线亮度的衰减速率是非恒定的。正如其名,距离越远,光线会变得越来越暗。和线性衰减一样,增大此数值会改变光线亮度的衰减速率,且它与强度难以区分。 阴影深度偏移:默认情况下,阴影深度偏移的最大值为0.001,因此实际上不会产生任何变化。但如果你将其重新映射为比如1,就会注意到差异。阴影深度偏移有点像最小距离,用于调整Source Filmmaker开始渲染阴影的时机。在99.9%的情况下,这个参数都没什么用处,所以不用太在意。

如你所见,这里瓶子的阴影并没有像正常情况那样从底部开始,而是从瓶子中部的某个位置开始。这非常不真实,看起来很突兀,观感很差。这种情况通常只在模型带有会导致奇怪阴影的小细节时才有用。此时你可以增加【阴影深度偏移】(shadowDepthBias)来去除这些小阴影。 【阴影斜率缩放深度偏移】(shadowSlopeScaleDepthBias) 说实话,我实在搞不懂这个设置的意义何在。滑块的最大值设为10,但你可以重新映射它。不过,在将其设为1000后,我能说的就是它会让阴影“变薄”,使阴影底部变窄。老实说,我几乎没用过【阴影深度偏移】,更不用说【阴影斜率缩放深度偏移】了。这两个参数通常一起使用来优化你的阴影效果。你可以多尝试,看看怎样设置效果最好。 farZAtten farZAtten的具体功能也相当令人困惑,但最常见的用法是进一步扩展灯光的照射范围。即使重新映射,maxDistance滑块也只能让灯光延伸到一定距离。不过,与farZAtten结合使用后,灯光的照射范围会大大增加。这在重新照亮整个地图时非常有用,比如你需要在天空高处放置一盏灯来照亮整个地图。

如你所见,不使用farZAtten的话,我们甚至看不到第二个和第三个桶。但在重新映射farZAtten后,我们不仅能看到那些桶,还能看到桶后面的墙壁。灯光的亮度衰减也有所减少。我不清楚原因。 我相信肯定有人能更好地解释farZAtten的工作原理,但以我的经验,我只用它来做这些。 nearEdge和farEdge 在SFM中,对于标准灯光,nearEdge和farEdge似乎没有任何作用。不过,如果你将灯光改为Uber灯光,在使用minDistance和maxDistance时,它们会产生淡入淡出效果。 cutOn和cutOff 同样,和nearEdge、farEdge一样,这两个设置对于标准灯光似乎也没有任何作用。对于超级灯光,它们会改变灯光距离的范围,很像最小距离和最大距离。 不过,与最小距离和最大距离不同,近边缘和远边缘可以照亮物体的部分区域。这意味着Source Filmmaker不会检查物体的任何部分是否在灯光路径中,然后照亮整个物体。相反,它只会照亮模型中位于灯光范围内的任何部分,并且只照亮那些部分。 体积光 体积光会在场景中产生“雾状”效果。有多种方法可以改变灯光的“雾浓度”或“尘埃感” 强度

通过调整强度,你将增加体积光的密度。但同时,你也会提高光线本身的亮度。当你希望在保持场景适当照明的同时,将光线与体积光区分开时,这可能会产生不良效果。 体积光强度 体积光会改变雾效的密度,而不会改变光线照射到表面时的亮度。

noiseStrength 表面上看,noiseStrength(噪点强度)和volumetricIntensity(体积光强度)的作用相同,但两者存在细微差异。体积光的纹理非常清晰,提高noiseStrength只会冲淡这种纹理。因此,如果你不喜欢这种奇怪的“云状”纹理,只需提高noiseStrength并降低volumetricIntensity即可。 重要说明:Source Filmmaker(SFM)中的体积光是分区块渲染的。通常这些区块并不明显,也不会造成太大问题。但如果你将体积光的maxDistance(最大距离)设置得非常高,就会开始出现问题。要知道,体积光的区块数量是固定的,所以如果光线需要延伸得很远,区块之间就会开始出现间隙。使用体积光时,只需将其控制在需要照亮的范围内即可。
宽度、高度 和之前一样,这两个设置对标准灯光似乎没有任何作用。不过对于超级灯光,当与水平视场角和垂直视场角配合使用时,它们可用于创建矩形灯光。 边缘宽度、边缘高度 同样,边缘宽度和边缘高度对标准灯光似乎没有任何作用。但对于超级灯光,它们会定义灯光边缘的渐变效果,类似于近边缘和远边缘的工作方式。 最终想法 本指南仅描述了每个滑块的功能,具体还需要你自己尝试各种设置,以找到最佳效果。良好的照明并没有特定的固定公式。不同的风格和主题会决定不同的照明方式。如果你需要一些关于如何使用灯光来正确照亮场景的基本提示,可以查看我的其他指南。希望本指南能帮助你更好地理解不同的灯光滑块,祝你未来的SFM项目顺利。
2026-02-14 16:00:15 发布在
Source Filmmaker
说点好听的...
收藏
0
0
