I’m not using a cubemap indeed, just the raw texture in a point light. I think the point light already has a built-in spherical projection for light functions. Just like you I started with cubemaps & complicated maths for UVs, but the solution was really that simple. I have not tried with spots though, IES are doing a good enough job for me, but I think they would totally work with light functions too, the projection is probably a simple plane at that point. And I tried caustics in one of my tests, it works beautifully The only thing that refrains me from using that everywhere is that UE’s documentation specifies that light functions are heavy rendering-wise. I have not been able to profile them in a stress test yet, it’s something I look forward to do.
Little tip, you might need to do your mipmaps by hand. You don’t need a big resolution for your light function textures, but they tend to look wonky or even totally disappear in the distance when higher mip levels kick in. I would recommend to disable mipmaps to begin with.