shapes-demo-0.1.0.0: src/GameInit.hs
module GameInit where
import Data.Text
import qualified SDL.Init as I
import qualified SDL.Hint as H
import qualified SDL.Video as V
import qualified SDL.Video.Renderer as R
import Foreign.C.Types
import Linear.V2
runMain :: String -> V2 CInt -> (R.Renderer -> IO ()) -> IO ()
runMain windowTitle screenSize main = do
I.initialize [I.InitVideo, I.InitTimer, I.InitEvents]
_ <- H.setHintWithPriority H.DefaultPriority H.HintRenderScaleQuality H.ScaleLinear
window <- V.createWindow (pack windowTitle)
(V.defaultWindow { V.windowInitialSize = screenSize })
renderer <- V.createRenderer window (-1) R.defaultRenderer
main renderer
V.destroyRenderer renderer
V.destroyWindow window
I.quit