So, I need to render a bunch of unlit objects and read from the depth texture afterwards (on a GPU) as fast as possible. The problem is, when I do the most logical thing, set the camera's depthTextureMode to Depth, the UpdateDepthTexture process takes significant amount of time. Not to mention batching breaks completely, so the vast majority of draw calls are spent on this. From what I understand though, there should be absolutely no need to render the depth to a separate buffer. You should be able to read the depth component of the FBO straight from a shader. Indeed, this is mentioned in the docs as well: "In some cases, the depth texture might come directly from the native Z buffer.". So, is there any way to force this, targeting for Direct3D? There seems to be no technical limitation, because the Unity's deferred rendering path must make and read from the depth buffer as well, yet there is no such UpdateDepthTexture component present in the profiler. Thanks for any and all help!