Refactor framebuffer update
This commit is contained in:
@@ -5,12 +5,12 @@ module Preload.Update (
|
||||
renderDataResizeUpdate,
|
||||
) where
|
||||
|
||||
import Dodge.WindowSize
|
||||
import Dodge.Data.Universe
|
||||
import Control.Lens
|
||||
import qualified Data.ByteString as BS
|
||||
import qualified Data.ByteString.Char8 as BSC
|
||||
import Data.Preload.Render
|
||||
import Dodge.Data.Universe
|
||||
import Dodge.WindowSize
|
||||
import Framebuffer.Update
|
||||
import Shader.Compile
|
||||
import Shader.Data
|
||||
@@ -18,9 +18,10 @@ import Shader.Data
|
||||
-- i don't like this being here pulling in the dodge universe dependency, but
|
||||
-- splitting it out would be overkill
|
||||
updatePreload :: Universe -> IO Universe
|
||||
updatePreload u = do
|
||||
pdata <- renderDataResizeUpdate (u ^. uvConfig) (u ^. preloadData . renderData)
|
||||
return $ u & preloadData . renderData .~ pdata
|
||||
updatePreload u =
|
||||
(preloadData . renderData)
|
||||
(renderDataResizeUpdate (u ^. uvConfig))
|
||||
u
|
||||
|
||||
renderDataResizeUpdate ::
|
||||
Configuration ->
|
||||
@@ -30,7 +31,7 @@ renderDataResizeUpdate cfig rdata = do
|
||||
rdata' <- sizeFBOs cfig rdata
|
||||
bbVert <- BS.readFile "shader/texture/bloomBlur.vert"
|
||||
bbFrag <- BS.readFile "shader/texture/bloomBlur.frag"
|
||||
let (xsize,ysize) = getWindowSize _graphics_downsize_resolution cfig :: (Int,Int)
|
||||
let (xsize, ysize) = getWindowSize _graphics_downsize_resolution cfig :: (Int, Int)
|
||||
(bh, bmid) = BS.breakSubstring "(" bbFrag
|
||||
(_, btt) = BS.breakSubstring ")" bmid
|
||||
bbFrag' = BS.append bh $ BS.append (BSC.pack $ '(' : show xsize ++ "," ++ show ysize) btt
|
||||
@@ -40,4 +41,4 @@ renderDataResizeUpdate cfig rdata = do
|
||||
[(vert, bbVert), (frag, bbFrag')]
|
||||
pmTriangleStrip
|
||||
(rdata ^. screenTextureVAO)
|
||||
return (rdata'{_bloomBlurShader = bbShad})
|
||||
return rdata'{_bloomBlurShader = bbShad}
|
||||
|
||||
Reference in New Issue
Block a user