Start cleanup
This commit is contained in:
+8
-15
@@ -22,7 +22,7 @@ import Foreign hiding (rotate)
|
||||
import Graphics.Rendering.OpenGL hiding (Line,translate,scale,imageHeight,Polygon,Color,T)
|
||||
--import Data.Foldable
|
||||
--import Data.Tuple.Extra
|
||||
import qualified Data.IntMap.Strict as IM
|
||||
--import qualified Data.IntMap.Strict as IM
|
||||
import qualified SDL
|
||||
import qualified Data.Vector.Unboxed.Mutable as UMV
|
||||
import qualified Data.Vector.Mutable as MV
|
||||
@@ -146,7 +146,7 @@ drawTextureOnFramebuffer fs fbo to = do
|
||||
drawShader fs 4
|
||||
|
||||
pokeBindFoldable
|
||||
:: MV.MVector (PrimState IO) VShader
|
||||
:: MV.MVector (PrimState IO) FullShader
|
||||
-> UMV.MVector (PrimState IO) Int
|
||||
-> [Verx]
|
||||
-> IO ()
|
||||
@@ -154,11 +154,8 @@ pokeBindFoldable shadV counts m = do
|
||||
pokeVerxs shadV counts m
|
||||
bindShader shadV counts
|
||||
|
||||
zeroCounts :: PicShads Int
|
||||
zeroCounts = PicShads 0 0 0 0 0 0
|
||||
|
||||
pokeBindFoldableLayer
|
||||
:: MV.MVector (PrimState IO) VShader
|
||||
:: MV.MVector (PrimState IO) FullShader
|
||||
-> UMV.MVector (PrimState IO) Int
|
||||
-> Picture
|
||||
-> IO ()
|
||||
@@ -167,7 +164,7 @@ pokeBindFoldableLayer shadV counts m = do
|
||||
bindShaderLayers shadV counts
|
||||
|
||||
renderFoldable
|
||||
:: MV.MVector (PrimState IO) VShader
|
||||
:: MV.MVector (PrimState IO) FullShader
|
||||
-> [Verx]
|
||||
-> IO ()
|
||||
renderFoldable shadV struct = do
|
||||
@@ -176,7 +173,7 @@ renderFoldable shadV struct = do
|
||||
MV.imapM_ (drawShaderLay' 0 counts) shadV
|
||||
|
||||
renderFoldableTimed
|
||||
:: MV.MVector (PrimState IO) VShader
|
||||
:: MV.MVector (PrimState IO) FullShader
|
||||
-> [Verx]
|
||||
-> IO Word32
|
||||
renderFoldableTimed shadV struct = do
|
||||
@@ -188,18 +185,14 @@ renderFoldableTimed shadV struct = do
|
||||
return $ pokeEndTicks - pokeStartTicks
|
||||
------------------------------end renderFoldable
|
||||
|
||||
renderLayer :: Int -> PicShads VShader -> IM.IntMap (PicShads Int) -> IO ()
|
||||
renderLayer layer shads counts = sequence_ $ drawShaderLay layer <$> shads <*> counts IM.! layer
|
||||
|
||||
renderLayer'
|
||||
renderLayer
|
||||
:: Int
|
||||
-> MV.MVector (PrimState IO) VShader
|
||||
-> MV.MVector (PrimState IO) FullShader
|
||||
-> UMV.MVector (PrimState IO) Int
|
||||
-> IO ()
|
||||
renderLayer' layer shads counts = do
|
||||
renderLayer layer shads counts = do
|
||||
let layerCounts = UMV.slice (layer * 6) 6 counts
|
||||
MV.imapM_ (drawShaderLay' layer layerCounts) shads
|
||||
-- sequence_ $ drawShaderLay layer <$> shads <*> counts IM.! layer
|
||||
|
||||
pokeTwoOff
|
||||
:: Ptr Float
|
||||
|
||||
Reference in New Issue
Block a user