====== Ward ====== A shader implementing the anisotropic Ward (1992) reflectance model. ===== ===== The BRDF is: $f_r = k_d / π + k_s · exp(−E(h)) / (4π · α_u · α_v · √(cos θ_i · cos θ_o))$ where the exponent for the isotropic case is $E(h) = tan²θ_h / α²$ and for the anisotropic case $E(h) = ((h·T)² / α_u² + (h·B)² / α_v²) / (h·N)²$ with N the surface normal, T = dpdu, B = dpdv the surface tangents, α_u the roughness along T, and α_v the roughness along B if isotropic with α_v = α_u. The model supports diffuse, specular, and (optionally) transparent transmission via the field. Transmission uses Fresnel-weighted straight-through (delta BTDF), CPU light model only.