Fix resize bug, resize RenderbufferObject of ping pong framebuffers
This commit is contained in:
@@ -42,11 +42,11 @@ resizeSpareFBO xsize ysize xfull yfull pdata = do
|
||||
return pdata
|
||||
|
||||
resizeTextureFBO
|
||||
:: (FramebufferObject , TextureObject)
|
||||
:: (FramebufferObject , TextureObject, RenderbufferObject)
|
||||
-> Int
|
||||
-> Int
|
||||
-> IO ()
|
||||
resizeTextureFBO (fboName,fboTO) xsize ysize = do
|
||||
resizeTextureFBO (fboName,fboTO,fboRBO) xsize ysize = do
|
||||
let xsize' = fromIntegral xsize
|
||||
ysize' = fromIntegral ysize
|
||||
bindFramebuffer Framebuffer $= fboName
|
||||
@@ -55,5 +55,10 @@ resizeTextureFBO (fboName,fboTO) xsize ysize = do
|
||||
textureFilter Texture2D $= ((Linear',Just Linear') , Nearest)
|
||||
generateMipmap' Texture2D
|
||||
framebufferTexture2D Framebuffer (ColorAttachment 0) Texture2D fboTO 0
|
||||
|
||||
bindRenderbuffer Renderbuffer $= fboRBO
|
||||
renderbufferStorage Renderbuffer Depth24Stencil8 (RenderbufferSize xsize' ysize')
|
||||
framebufferRenderbuffer Framebuffer DepthStencilAttachment Renderbuffer fboRBO
|
||||
|
||||
fboStatus <- framebufferStatus Framebuffer
|
||||
putStrLn $ "after resize, framebuffer status:" ++ show fboStatus
|
||||
|
||||
Reference in New Issue
Block a user