I’ve been working through this a bit, and it appears the problem really is that Eevee doesn’t handle light all that well. Shadows are present if the background or HDRI is removed, but as soon as you put any complex rasters into a scene, Eevee doesn’t seem to know what to do with it. Here is a shadow on my plane with a simple cube (without the background image). I also had to completely remove the Diffuse BSDF, Shader as RGB, and ColorRamp to see anything:
Now if I add them back in, still without background:
The shadow is barely visible, and there is no way to make it darker, intensify its angle, etc. No matter where the light is in the scene, Eevee just casts a shadow directly below the object. Not sure what the developers were thinking. Perhaps I am missing the point of using Eevee.
Now, as soon as I add the background back in, the shadow is all but obscured:
If I switch over to Cycles, the shadow completely disappears:
I guess my whole point here is — there really isn’t a valid way to get physically accurate shadows on transparent planes in Eevee, and certainly not if backgrounds are added. And there also appears to be no interchangability between shaders ---- implementing the nodes for shadows in Eevee will not translate to Cycles, and vice versa. They both have their own way of doing things, and that makes working with Blender for renders problematic, at least in a large commercial pipeline.
The whole purpose of this test was to see if we could achieve the same results we are getting with Maya and Houdini, which both are able to execute these tasks with zero problems. Blender, on the other hand, does not seem to support flexible lighting and on-the-fly render passes in a way that reflects reality.
I find it rather disappointing that we can’t use this tool to simulate lighting using our motion capture and previous footage. This is a very simple task, and this tool is having a very hard time living up to its reputation.