Quick hack to make window rendering passable
Before windows drew even on black backgrounds
This commit is contained in:
+6
-2
@@ -301,7 +301,7 @@ doDrawing' win pdata u = do
|
||||
glClearNamedFramebufferfv (pdata ^. fboWindow . _1 . unFBO) GL_COLOR 0
|
||||
withArray [0, 0, 0, 0] $
|
||||
glClearNamedFramebufferfv (pdata ^. fboWindow . _1 . unFBO) GL_COLOR 1
|
||||
glEnable GL_CULL_FACE
|
||||
-- glEnable GL_CULL_FACE
|
||||
glEnable GL_DEPTH_CLAMP
|
||||
glDepthFunc GL_LEQUAL
|
||||
glDepthMask GL_FALSE
|
||||
@@ -311,10 +311,11 @@ doDrawing' win pdata u = do
|
||||
-- with all source alphas 0.25, alpha -> 0.5
|
||||
glBlendFunc GL_ONE_MINUS_DST_ALPHA GL_ONE_MINUS_SRC_ALPHA
|
||||
glUseProgram $ pdata ^. windowPullShader
|
||||
glDrawArrays GL_TRIANGLES 0 (fromIntegral nWins * 12)
|
||||
-- don't need cloud postions any more
|
||||
withArray [GL_COLOR_ATTACHMENT0] $
|
||||
glInvalidateNamedFramebufferData (pdata ^. fboPos . _1 . unFBO) 1
|
||||
glDrawArrays GL_TRIANGLES 0 (fromIntegral nWins * 12)
|
||||
glEnable GL_CULL_FACE
|
||||
glDisable GL_DEPTH_CLAMP
|
||||
--apply lightmap to cloud buffer
|
||||
glBindFramebuffer GL_FRAMEBUFFER (_unFBO (fst (_fboCloud pdata)))
|
||||
@@ -332,10 +333,13 @@ doDrawing' win pdata u = do
|
||||
glBindFramebuffer GL_FRAMEBUFFER (pdata ^. fboBase . _1 . unFBO)
|
||||
glUseProgram (pdata ^. fullscreenShader)
|
||||
glBindTextureUnit 0 (pdata ^. fboWindow . _2 . _2 . unTO)
|
||||
glBlendFunc GL_DST_COLOR GL_ONE_MINUS_SRC_ALPHA
|
||||
glDrawArrays GL_TRIANGLES 0 6
|
||||
glBindTextureUnit 0 (pdata ^. fboCloud . _2 . _1 . unTO)
|
||||
glBlendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA
|
||||
glDrawArrays GL_TRIANGLES 0 6
|
||||
glBindTextureUnit 0 (pdata ^. fboWindow . _2 . _1 . unTO)
|
||||
glBlendFunc GL_DST_COLOR GL_ONE_MINUS_SRC_ALPHA
|
||||
glDrawArrays GL_TRIANGLES 0 6
|
||||
|
||||
--Draw blurred bloom onto base buffer
|
||||
|
||||
Reference in New Issue
Block a user