0
我正在爲使用Direct3D(9.0c)作爲渲染器的應用程序編寫插件。沒有太多的東西暴露給我的插件,但是我可以訪問IDirect3DDevice9接口。使用指向此接口的指針,是否可以枚舉已分配的紋理?是否可以使用DirectX 9枚舉紋理?
具體來說,我需要找到應用程序用於紋理渲染的渲染目標,以便我可以訪問其深度緩衝區以使用我的自定義着色器。
感謝, 布賴恩
我正在爲使用Direct3D(9.0c)作爲渲染器的應用程序編寫插件。沒有太多的東西暴露給我的插件,但是我可以訪問IDirect3DDevice9接口。使用指向此接口的指針,是否可以枚舉已分配的紋理?是否可以使用DirectX 9枚舉紋理?
具體來說,我需要找到應用程序用於紋理渲染的渲染目標,以便我可以訪問其深度緩衝區以使用我的自定義着色器。
感謝, 布賴恩
如果你在任何時候訪問的IDirect3DDevice9,你可以只使用GetRenderTarget方法來獲得當前的渲染目標 - http://msdn.microsoft.com/en-us/library/windows/desktop/bb174404(v=vs.85).aspx。如果你需要訪問深度緩衝區,那麼情況會變得複雜。如果應用程序將深度寫入單獨的紋理,則可以獲取它。如果應用程序使用硬件深度緩衝區,則無法從中讀取。