Is there a way to bend transmitted light more than 90 degrees?

Totally nonphysical, I know, but it’s one snag in a little light-focusing trick I’ve been working on, so I’d like to know if there’s some way around things.


The upper plane (material nodes shown) is focused on the central Voronoi cell of the lower plane, and should be entirely that pale yellow. The black region is where (incoming dot normal) is less than zero, so from the renderer’s perspective, we’re on the wrong side of the plane. Since the normal vector is what I’m using to direct the outgoing rays (that IOR is supposed to be essentially infinite,) this would seem to be a geometric showstopper unless there is, in fact, some way to bend light more than 90 degrees.

OSL solutions welcome; I’m also more ideally hoping that there’s some way to define a BSDF where the direction of the outgoing ray can be explicitly, manually set, but I couldn’t find that as an option in the OSL language specification, and this altered-normals-plus-0/infinity-IOR trick is the nearest approximation I’ve managed.

Blend file for those interested; thanks in advance;
Focuser_v1.blend (499.9 KB)