From f9f38d28813aeeb3346dfe2a0ff89351cff16ab1 Mon Sep 17 00:00:00 2001 From: Péter Diviánszky Date: Fri, 5 Feb 2016 18:08:15 +0100 Subject: bugfix --- src/LambdaCube/Compiler/CoreToIR.hs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/LambdaCube/Compiler/CoreToIR.hs b/src/LambdaCube/Compiler/CoreToIR.hs index 2a3c78eb..e11e2861 100644 --- a/src/LambdaCube/Compiler/CoreToIR.hs +++ b/src/LambdaCube/Compiler/CoreToIR.hs @@ -138,7 +138,8 @@ getSlot x = error $ "getSlot: " ++ ppShow x getPrim (A1 "List" (A2 "Primitive" _ p)) = p getPrim' (A1 "List" (A2 "Primitive" a _)) = a -getPrim'' (A1 "List" (A2 "Fragment" _ a)) = a +getPrim'' (A1 "List" (A2 "Vector" _ (A1 "Maybe" (A1 "SimpleFragment" a)))) = a +getPrim'' x = error $ "getPrim'':" ++ ppShow x addProgramToSlot :: IR.ProgramName -> IR.Command -> CG () addProgramToSlot prgName (IR.RenderSlot slotName) = do @@ -225,7 +226,7 @@ getCommands e = case e of rt <- newFrameBufferTarget (tyOf a) (subCmds,cmds) <- getCommands a return (subCmds,IR.SetRenderTarget rt : cmds) - Prim3 "Accumulate" actx (getFragmentShader . removeDepthHandler -> (frag, getFragFilter -> (ffilter, Prim3 "foldr" (EtaPrim2_2 "++") (A0 "Nil") (Prim2 "map" (EtaPrim3 "rasterize" {-rp-} is rctx) (getVertexShader -> (vert, input)))))) fbuf -> do + Prim3 "Accumulate" actx (getFragmentShader . removeDepthHandler -> (frag, getFragFilter -> (ffilter, Prim3 "foldr" (EtaPrim2_2 "++") (A0 "Nil") (Prim2 "map" (EtaPrim3 "rasterizePrimitive" is rctx) (getVertexShader -> (vert, input)))))) fbuf -> do let rp = compRC' rctx (smpBindingsV,vertCmds) <- getRenderTextureCommands vert (smpBindingsR,rastCmds) <- maybe (return mempty) getRenderTextureCommands ffilter -- cgit v1.2.3