47 lines
2.0 KiB
Haskell
47 lines
2.0 KiB
Haskell
{-# LANGUAGE StrictData
|
|
, TemplateHaskell
|
|
#-}
|
|
--{-# OPTIONS_GHC -Wno-unused-top-binds #-}
|
|
module Data.Preload.Render
|
|
where
|
|
import Shader.Data
|
|
|
|
import Graphics.Rendering.OpenGL hiding (Point,translate,scale,imageHeight)
|
|
import Control.Lens
|
|
import qualified Data.Vector.Mutable as MV
|
|
import Control.Monad.Primitive
|
|
|
|
data RenderData = RenderData
|
|
{ _lightingOccludeShader :: FullShader
|
|
--, _lightingWallShader :: FullShader
|
|
--, _lightingSurfaceShader :: FullShader
|
|
, _lightingLineShadowShader :: FullShader
|
|
, _lightingCapShader :: FullShader
|
|
, _wallBlankShader :: FullShader
|
|
, _wallTextureShader :: FullShader
|
|
, _textureArrayShader :: FullShader
|
|
, _fullscreenShader :: FullShader
|
|
, _fullLightingShader :: FullShader
|
|
--, _fullscreenAlphaHalveShader :: FullShader
|
|
, _bloomBlurShader :: FullShader
|
|
, _colorBlurShader :: FullShader
|
|
, _barrelShader :: FullShader
|
|
, _grayscaleShader :: FullShader
|
|
, _pictureShaders :: MV.MVector (PrimState IO) FullShader
|
|
, _fbo2 :: (FramebufferObject, TextureObject)
|
|
, _fbo3 :: (FramebufferObject, TextureObject)
|
|
, _fboFourth1 :: (FramebufferObject, TextureObject)
|
|
, _fboFourth2 :: (FramebufferObject, TextureObject)
|
|
, _fboBase :: (FramebufferObject, (TextureObject, TextureObject))
|
|
, _fboCloud :: (FramebufferObject, (TextureObject, TextureObject))
|
|
, _fboBloom :: (FramebufferObject, TextureObject)
|
|
, _fboColor :: (FramebufferObject, TextureObject)
|
|
, _fboPos :: (FramebufferObject, TextureObject)
|
|
, _rboBaseBloom :: RenderbufferObject
|
|
, _fboLighting :: (FramebufferObject, TextureObject)
|
|
, _fboLightingHigh :: (FramebufferObject, TextureObject)
|
|
, _matUBO :: BufferObject
|
|
}
|
|
makeLenses ''RenderData
|
|
|