Scripted scatter(脚本散射)模型和Extended Scripted scatter(扩展脚本散射)模型都允许用户根据包含镜像和散射角的任意表达式定义BSDF,还可以用于改变散射光线波长。但是,只有Extended Scripted scatter模型允许用户修改散射光线偏振状态,这是通过使用T_SCATTERSCRIPTEX数据结构完成的。
在下面的简单脚本中,“S”轴的定义是与曲面的X轴(第18-20行)对齐的。所有生成的散射光都被设置为沿该轴(第23-26行)100%线偏振光。注:g_Ascat_r_s 和 g_Ascat_i_s 是S矢量复振幅的实部和虚部,g_Ascat_r_p 和 g_Ascat_i_p是P矢量的实部和虚部。
下面的简单示例文件由一个随机偏振光源(红色绘制的光线)和一个产生散射光线(用绿色绘制)的散射面组成。重点采样用于确保光线仅沿探测器方向散射。
FRED的“Polarization Spot Diagram”显示了光线在光源和探测器的偏振状态。
在光源
在探测器