2017-08-05 35 views
0

現在我正在使用景深着色器。 以下是它的工作原理:LibGDX如何從FrameBuffer獲取深度緩衝區?

我將整個場景渲染到FrameBuffer,然後在其上應用着色器。 但是,存在一個問題:如何將深度緩衝區作爲統一傳遞給着色器?我無法在FrameBuffer的方法中找到它。

任何幫助表示讚賞。

+0

您可能想要發佈代碼並查看本文:https://stackoverflow.com/help/how-to-ask – Aron

回答

0

不是LibGDX用戶(我使用LWJGL),但在OpenGL中,您需要將幀緩衝區作爲紋理傳遞給着色器。在LibGDX中,FrameBuffer延伸GLFrameBuffer。爲了獲得FrameBuffer的深度紋理,您需要調用getDepthBufferHandle(),然後將其視爲紋理。