I have been trying to get per pixel ground-truth depth data for a scene from Unreal Engine.
I explored the buffer visualization modes namely SceneDepth and SceneDepthWorldUnits. I used the High Resolution Screenshot feature to export these buffers into exr format.
I realized that SceneDepth is normalized between 0-1 which isn’t helpful for my use case and it also had the fractals issue.
On converting the SceneDepthWorldUnits exr file to other formats like pfm and png, I could verify that this was indeed depth in absolute units.
But there were a few issues here. Certain textures in the scene were missing from the depth map. After some experimentation and clarification with the documentation, I realized that this is because of the translucent nature of these meshes. As SceneDepth is calculated exclusively for non translucent meshes due to the internal rendering passes order of Unreal, there were these missing textures in the depth maps.
Hoping to workaround this internal rendering order where Scene Depth was calculated before translucency was added, I tried calculating depth as a Post Processing effect by using Scene Depth node. I noticed that the issue persists even in this case.
It would be really helpful if any of you could suggest a workaround to get the depth map of the entire scene (including translucent and non translucent meshes) and export it in some format.
I am a beginner in Unreal Engine and it is possible that I might have missed out on something. So any suggestion would be greatly appreciated.
Thank you in advance.