Question about Volumes in OSL

I’m trying to approximate a Rayleigh scattering volume. I’ve made a very simple shader that combines three different volumes, one for R, G, and B. The densities work as expected, but I can’t figure out why the different Anisotropy values don’t seem to affect the color. Anyone have an explanation? Thanks in advance.


#include "stdosl.h"

shader RGBvol(
     color Color = color(0.8, 0.8, 0.8),
     float DensityR = 1.0,
     float DensityG = 1.0,
     float DensityB = 1.0,
     float AnisotropyR = 0.0,
     float AnisotropyG = 0.0,
     float AnisotropyB = 0.0,

     output closure color Volume = 0)
{
     closure color VolumeR = (color(Color[0], 0, 0) * DensityR) * henyey_greenstein(AnisotropyR);
     closure color VolumeG = (color(0, Color[1], 0) * DensityG) * henyey_greenstein(AnisotropyG);
     closure color VolumeB = (color(0, 0, Color[2]) * DensityB) * henyey_greenstein(AnisotropyB);
     Volume = VolumeR + VolumeG + VolumeB;
}

Also, I’m not sure if this is the best way to use volumes. If there’s a better way, I’d love to know.