OSL 的计算默认值和 UVW 输入

OSL 有一项称为计算默认值的特殊功能。这意味着贴图可以有这样的输入(如果未在任何位置连接该输入):该输入可以包含某个特别计算的值作为有用的默认值。可以这样理解为何使用计算默认值:输入包含贴图输入,但界面中没有用于该值的值微调器(如果未连接该贴图输入,则使用计算值)。

许多贴图都使用此功能。例如,所有包含的 OSL 贴图都附带 UVW 输入。与传统的 3ds Max 贴图相反,您可以通过此功能连接任何计算的输出(返回一个三分量值,例如向量、点甚至颜色)来驱动纹理的查找位置。

为了在未连接 UVW 输入时贴图具有意义,可使用计算默认值。大多数二维纹理使用映射到 3ds Max 贴图通道 1 的计算默认值,大多数三维纹理具有明暗处理点对象空间坐标的计算默认值。这样,在直接使用贴图时,这些贴图可以提供合理的默认纹理。如果要使用不同的 UVW 贴图通道或变换 UVW 坐标,可以使用 UVW 类别中的贴图来完成。

到底使用什么计算默认值完全取决于 OSL 代码本身。一些贴图的特殊操作只是用于演示,例如,黑体明暗器使用贴图通道 1 的 U 坐标在曲面上生成某个示例渐变,这与波长明暗器一样。这也意味着从 Internet 下载的 OSL 贴图完全可用于获得计算默认值。

切记: 如果您只有贴图输入但没有微调器,此时也许可以使用它来提供有意义的输入。