Mind you this is beyond me-
Couldn’t you have a translucent overlay over the whole image? And use 2d sprites for shadows under the fish?
That way your fish and the rock both have the light effects? That’s how I would do it in 2d animation and I think a similar approach should work in 3d.
But I am just guessing.
JB Skaggs