Make bloom trail last for at most one frame
This commit is contained in:
+9
-7
@@ -82,20 +82,24 @@ doDrawing pdata w = do
|
||||
depthMask $= Enabled
|
||||
--bindFramebuffer Framebuffer $= (fst3 $ _fbo2 pdata)
|
||||
bindFramebuffer Framebuffer $= (fst $ _fboFourth1 pdata)
|
||||
viewport $= (Position 0 0, Size 600 600)
|
||||
viewport $= (Position 0 0, Size 300 300)
|
||||
depthFunc $= Just Always
|
||||
--blend $= Disabled
|
||||
textureBinding Texture2D $= Just (snd $ _fboBloom pdata)
|
||||
textureFilter Texture2D $= ((Linear',Nothing) , Linear')
|
||||
--clear [ColorBuffer]
|
||||
--blendFunc $= (SrcAlpha,OneMinusSrcAlpha)
|
||||
--blendFuncSeparate $= ((Zero,One), (Zero,SrcAlpha))
|
||||
--drawShader (_fullscreenAlphaHalveShader pdata) 4
|
||||
--blendFunc $= (SrcAlpha,OneMinusSrcAlpha)
|
||||
--drawShader (_bloomBlurShader pdata) 4
|
||||
blendFunc $= (One,Zero)
|
||||
drawShader (_fullscreenShader pdata) 4
|
||||
--replicateM_ 5 $ pingPongBetween (_fboFourth1 pdata) (_fboFourth2 pdata) (_bloomBlurShader pdata)
|
||||
--blendFuncSeparate $= ((Zero,One),(Zero,SrcAlpha))
|
||||
blendFunc $= (One,One)
|
||||
blendEquation $= FuncReverseSubtract
|
||||
drawShader (_fullscreenAlphaHalveShader pdata) 4
|
||||
blendFunc $= (SrcAlpha,OneMinusSrcAlpha)
|
||||
blendEquation $= FuncAdd
|
||||
drawShader (_bloomBlurShader pdata) 4
|
||||
replicateM_ 5 $ pingPongBetween (_fboFourth1 pdata) (_fboFourth2 pdata) (_bloomBlurShader pdata)
|
||||
--replicateM_ 5 $ pingPongBlur pdata
|
||||
--blend $= Enabled
|
||||
viewport $= (Position 0 0, Size (round $ fst wins) (round $ snd wins))
|
||||
@@ -122,8 +126,6 @@ doDrawing pdata w = do
|
||||
--drawShader (_fullscreenShader pdata) 4
|
||||
--textureBinding Texture2D $= Just (snd3 $ _fbo2 pdata)
|
||||
textureBinding Texture2D $= Just (snd $ _fboLighting pdata)
|
||||
textureFilter Texture2D $= ((Linear',Just Linear') , Linear')
|
||||
generateMipmap' Texture2D
|
||||
blend $= Enabled
|
||||
blendFunc $= (Zero, OneMinusSrcAlpha)
|
||||
drawShader (_fullscreenShader pdata) 4
|
||||
|
||||
Reference in New Issue
Block a user