Fix resize bug, resize RenderbufferObject of ping pong framebuffers
This commit is contained in:
+4
-13
@@ -31,8 +31,8 @@ data RenderData = RenderData
|
||||
, _spareFBO :: FramebufferObject
|
||||
, _fboTexture :: TextureObject
|
||||
, _fboRenderbufferObject :: RenderbufferObject
|
||||
, _fbo2 :: (FramebufferObject, TextureObject)
|
||||
, _fbo3 :: (FramebufferObject, TextureObject)
|
||||
, _fbo2 :: (FramebufferObject, TextureObject, RenderbufferObject)
|
||||
, _fbo3 :: (FramebufferObject, TextureObject, RenderbufferObject)
|
||||
}
|
||||
|
||||
makeLenses ''RenderData
|
||||
@@ -47,7 +47,6 @@ preloadRender = do
|
||||
wlLightShad
|
||||
<- makeShader "lighting/wall" [vert,geom,frag] [(0,4)] Points pokeWPStrat
|
||||
>>= addUniforms ["lightPos","perpMat","radLum"]
|
||||
|
||||
-- 2D draw shaders
|
||||
bslist <- makeShader "twoD/basic" [vert,frag] [(0,3),(1,4)] Triangles pokeTriStrat
|
||||
lslist <- makeShader "twoD/basic" [vert,frag] [(0,3),(1,4)] Lines pokeLineStrat
|
||||
@@ -58,7 +57,6 @@ preloadRender = do
|
||||
cslist <- makeShader "twoD/character" [vert,geom,frag]
|
||||
[(0,3),(1,4),(2,3)] Points pokeCharStrat
|
||||
>>= addTexture "data/texture/charMap.png"
|
||||
|
||||
-- texture shaders, no textures attached
|
||||
fsShad <- makeShader "texture/simple" [vert,frag] [(0,2),(1,2)] TriangleStrip $ const
|
||||
[[[-1, 1],[0,1]]
|
||||
@@ -81,12 +79,9 @@ preloadRender = do
|
||||
,[[ 1,-1],[1,0]]
|
||||
]
|
||||
_ <- F.foldM (pokeShader grayscaleShad) [()] -- fix fullscreen vertex positions now
|
||||
|
||||
|
||||
-- background shader
|
||||
bgShad <- makeShader "background" [vert,geom,frag] [(0,4),(1,2)] Points pokeBGStrat
|
||||
>>= addTexture "data/texture/smudgedDirt.png"
|
||||
|
||||
-- blank wallShader
|
||||
wlBlank <- makeShader "wall/blank" [vert,geom,frag] [(0,4),(1,4)] Points pokeWPColStrat
|
||||
-- >>= addTexture "data/texture/grayscaleDirt.png"
|
||||
@@ -95,16 +90,12 @@ preloadRender = do
|
||||
wlTexture <- makeShader "wall/texture" [vert,geom,frag] [(0,4),(1,4)] Points pokeWPColStrat
|
||||
>>= addTexture "data/texture/grayscaleDirt.png"
|
||||
>>= addUniforms ["perpMat"]
|
||||
|
||||
-- framebuffer for lighting
|
||||
(fbo,fboTO,fboRBO) <- setupFramebufferWithStencil
|
||||
|
||||
framebuf2 <- setupFramebuffer
|
||||
framebuf3 <- setupFramebuffer
|
||||
|
||||
framebuf2 <- setupFramebufferWithStencil
|
||||
framebuf3 <- setupFramebufferWithStencil
|
||||
-- reset to default framebuffer, ready for drawing direct to screen
|
||||
bindFramebuffer Framebuffer $= defaultFramebufferObject
|
||||
|
||||
return $ RenderData
|
||||
{ _pictureShaders = [bslist,lslist,cslist,aslist,eslist,bezierQuadShader]
|
||||
, _lightingFloorShader = lsShad
|
||||
|
||||
Reference in New Issue
Block a user