From 295a5f7e1d7cd7b1e7480365b219b7f747424dea Mon Sep 17 00:00:00 2001 From: justin Date: Thu, 13 Nov 2025 23:31:16 +0000 Subject: [PATCH] Cleanup, overpower bloom --- src/Dodge/Render.hs | 19 +++++-------------- src/Render.hs | 12 +----------- src/Shader/Bind.hs | 3 --- tags | 16 ++++++++-------- 4 files changed, 14 insertions(+), 36 deletions(-) diff --git a/src/Dodge/Render.hs b/src/Dodge/Render.hs index aa0284d14..41e4d0fca 100644 --- a/src/Dodge/Render.hs +++ b/src/Dodge/Render.hs @@ -119,7 +119,6 @@ doDrawing' win pdata u = do glStencilFunc GL_NOTEQUAL 128 255 glStencilOp GL_KEEP GL_KEEP GL_REPLACE glEnable GL_CULL_FACE - glCullFace GL_BACK unless (debugOn Remove_LOS cfig) $ do glUseProgram (pdata ^. ceilingStencilShader) glBindVertexArray $ pdata ^. dummyVAO . vaoName @@ -137,7 +136,6 @@ doDrawing' win pdata u = do glNamedFramebufferDrawBuffers (pdata ^. fboBase . _1 . unFBO) 3 --draw walls onto base buffer glEnable GL_CULL_FACE - glCullFace GL_BACK glUseProgram (pdata ^. pullWallShader) glDrawArrays GL_TRIANGLES 0 (fromIntegral trueNWalls * 6) --draw object shapes onto base buffer @@ -154,12 +152,12 @@ doDrawing' win pdata u = do withArray [GL_COLOR_ATTACHMENT0, GL_COLOR_ATTACHMENT1, GL_COLOR_ATTACHMENT2] $ glNamedFramebufferDrawBuffers (pdata ^. fboBase . _1 . unFBO) 3 glDepthMask GL_TRUE + glDisable GL_CULL_FACE --draw floor onto base buffer glUseProgram (pdata ^. floorShader) glStencilFunc GL_EQUAL 0 255 glDrawArrays GL_TRIANGLES 0 (fromIntegral nFls) --glDisable GL_STENCIL_TEST - glDisable GL_CULL_FACE glEnable GL_BLEND --draw lightmap into its own buffer createLightMap @@ -188,7 +186,7 @@ doDrawing' win pdata u = do glBindFramebuffer GL_FRAMEBUFFER (pdata ^. fboBloom . _1 . unFBO) withArray [0, 0, 0, 0] $ glClearNamedFramebufferfv (pdata ^. fboBloom . _1 . unFBO) GL_COLOR 0 - glDepthFunc GL_LESS + glDepthFunc GL_LEQUAL --glBlendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA --glBlendFunc GL_ONE GL_ONE_MINUS_SRC_ALPHA glBlendFunc GL_ONE GL_ONE @@ -240,8 +238,9 @@ doDrawing' win pdata u = do glBlendFuncSeparatei 0 GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA GL_ONE_MINUS_DST_ALPHA GL_ONE --glBlendFunci 0 GL_ONE GL_ONE_MINUS_SRC_ALPHA --withArray [GL_COLOR_ATTACHMENT0, GL_NONE] $ - withArray [GL_COLOR_ATTACHMENT0, GL_COLOR_ATTACHMENT1] $ - glNamedFramebufferDrawBuffers (pdata ^. fboCloud . _1 . unFBO) 2 + --withArray [GL_COLOR_ATTACHMENT0, GL_COLOR_ATTACHMENT1] $ + withArray [GL_COLOR_ATTACHMENT0] $ + glNamedFramebufferDrawBuffers (pdata ^. fboCloud . _1 . unFBO) 1 withArray [0.5, 0.5, 0.5, 0] $ glClearNamedFramebufferfv (pdata ^. fboCloud . _1 . unFBO) @@ -249,12 +248,6 @@ doDrawing' win pdata u = do 0 glUseProgram (pdata ^. cloudShader) glDrawArrays GL_TRIANGLES 0 (fromIntegral nCloudVs * 6) - -- glEnable GL_CULL_FACE - -- glEnable GL_DEPTH_CLAMP - -- glCullFace GL_BACK - ---- drawShader (_windowShader pdata) nWins - -- glDisable GL_DEPTH_CLAMP - -- glDisable GL_CULL_FACE when (_gr_cloud_shadows cfig) $ do ----render transparency depths -- glDepthMask GL_TRUE @@ -279,7 +272,6 @@ doDrawing' win pdata u = do --- -- glEnable GL_CULL_FACE -- glEnable GL_DEPTH_CLAMP - -- glCullFace GL_BACK ---- drawShader (_windowShader pdata) nWins -- glDisable GL_DEPTH_CLAMP -- glDisable GL_CULL_FACE @@ -320,7 +312,6 @@ doDrawing' win pdata u = do glEnable GL_CULL_FACE glEnable GL_DEPTH_CLAMP glDepthFunc GL_LEQUAL - glCullFace GL_BACK glDisable GL_BLEND -- glDepthFunc GL_ALWAYS -- glDisable GL_CULL_FACE diff --git a/src/Render.hs b/src/Render.hs index bf6c3c19c..ee5b053e8 100644 --- a/src/Render.hs +++ b/src/Render.hs @@ -96,7 +96,6 @@ renderLightingNoShadows positiontexture normaltexture lightPoints pdata = do glStencilFunc GL_NOTEQUAL 128 255 glStencilOp GL_KEEP GL_KEEP GL_KEEP glColorMask GL_TRUE GL_TRUE GL_TRUE GL_TRUE --- glDisable GL_STENCIL_TEST renderFlatLighting :: RenderData -> IO () @@ -161,10 +160,7 @@ renderShadows shadrendertype nWalls nSils nCaps positiontexture normaltexture li glColorMask GL_FALSE GL_FALSE GL_FALSE GL_FALSE -- setup stencil with 0 $ - glClearNamedFramebufferiv - (pdata ^. fboLighting . _1 . unFBO) - GL_STENCIL - 0 + glClearNamedFramebufferiv (pdata ^. fboLighting . _1 . unFBO) GL_STENCIL 0 glDisable GL_CULL_FACE -- the first bit has been used to stencil out "ceilings" under which we never draw glStencilFunc GL_NOTEQUAL 128 255 @@ -175,18 +171,12 @@ renderShadows shadrendertype nWalls nSils nCaps positiontexture normaltexture li case shadrendertype of GeoObjShads -> do --draw silhouette shadows - glEnable GL_DEPTH_CLAMP glUseProgram llinesShad glDrawArrays GL_TRIANGLES 0 ((fromIntegral nSils * 6) `div` 4) --draw caps on the near plane as required glEnable GL_CULL_FACE - glCullFace GL_BACK glUseProgram lcapShad --- glUniform3f 0 x y z --- glUniform4f 1 r g b rad --- glFrontFace(GL_CW) glDrawArrays GL_TRIANGLES 0 (fromIntegral nCaps) --- glFrontFace(GL_CCW) glDisable GL_DEPTH_CLAMP _ -> return () --draw lightmap itself diff --git a/src/Shader/Bind.hs b/src/Shader/Bind.hs index 3260b64eb..9621006c7 100644 --- a/src/Shader/Bind.hs +++ b/src/Shader/Bind.hs @@ -45,6 +45,3 @@ bufferShaderLayers shads counts = MV.imapM_ f shads (fromIntegral $ floatSize * stride * numSubElements * lay) (fromIntegral $ floatSize * numVs * stride) (_vboPtr theVBO `plusPtr` (floatSize * stride * numSubElements * lay)) - ---glNamedBufferSubDataH :: GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO () ---glNamedBufferSubDataH = glNamedBufferSubData diff --git a/tags b/tags index aab618f2f..9b8b589c8 100644 --- a/tags +++ b/tags @@ -2648,7 +2648,7 @@ beltMag src/Dodge/Item/Ammo.hs 39;" f bfsThenReturn src/Dodge/Creature/ReaderUpdate.hs 226;" f bgateCalc src/Dodge/Inventory/SelectionList.hs 118;" f bgunSound src/Dodge/HeldUse.hs 514;" f -bindFBO src/Render.hs 232;" f +bindFBO src/Render.hs 222;" f bingate src/Dodge/Item/Scope.hs 109;" f black src/Color.hs 27;" f blank src/Picture/Base.hs 59;" f @@ -2704,7 +2704,7 @@ brightX src/Color.hs 116;" f btSPic src/Dodge/Render/ShapePicture.hs 129;" f btText src/Dodge/Inventory/SelectionList.hs 237;" f bufferEBO src/Shader/Bind.hs 28;" f -bufferPerspectiveMatrixUBO src/Dodge/Render.hs 418;" f +bufferPerspectiveMatrixUBO src/Dodge/Render.hs 413;" f bufferPokedVBO src/Shader/Bind.hs 19;" f bufferShaderLayers src/Shader/Bind.hs 32;" f bulletBeltBracer src/Dodge/Item/Equipment.hs 67;" f @@ -3558,7 +3558,7 @@ getCrMoveSpeed src/Dodge/Creature/Statistics.hs 50;" f getCrsFromRooms src/Dodge/Room/Tutorial.hs 357;" f getCrsFromRooms' src/Dodge/Room/Tutorial.hs 344;" f getDebugMouseOver src/Dodge/Update.hs 374;" f -getDistortions src/Dodge/Render.hs 430;" f +getDistortions src/Dodge/Render.hs 425;" f getEdgesCrossing src/Dodge/Path.hs 37;" f getGrenadeHitEffect src/Dodge/HeldUse.hs 1264;" f getInventoryPath src/Dodge/Inventory/Path.hs 9;" f @@ -4334,7 +4334,7 @@ pincerP src/Dodge/Creature/Boid.hs 63;" f pincerP' src/Dodge/Creature/Boid.hs 96;" f pincerP'' src/Dodge/Creature/Boid.hs 106;" f pincerP''' src/Dodge/Creature/Boid.hs 77;" f -pingPongBetween src/Render.hs 207;" f +pingPongBetween src/Render.hs 197;" f pipe src/Dodge/Item/Craftable.hs 32;" f pistol src/Dodge/Item/Held/Stick.hs 40;" f pistolerRoom src/Dodge/Room/Room.hs 330;" f @@ -4606,13 +4606,13 @@ removeLights src/Dodge/Room/Tutorial.hs 257;" f removeShieldWall src/Dodge/Item/BackgroundEffect.hs 57;" f removeWallsInPolygon src/Dodge/LevelGen/StaticWalls.hs 182;" f renderDataResizeUpdate src/Preload/Update.hs 26;" f -renderFlatLighting src/Render.hs 102;" f +renderFlatLighting src/Render.hs 101;" f renderInfoListAt src/Dodge/Render/InfoBox.hs 17;" f renderInfoListsAt src/Dodge/Render/InfoBox.hs 44;" f -renderLayer src/Render.hs 221;" f +renderLayer src/Render.hs 211;" f renderLightingNoShadows src/Render.hs 48;" f renderListAt src/Dodge/Render/List.hs 192;" f -renderShadows src/Render.hs 117;" f +renderShadows src/Render.hs 116;" f replaceNullWith src/Dodge/Creature/ReaderUpdate.hs 168;" f replacePutID src/Dodge/Placement/Instance/Wall.hs 105;" f resetCrVocCoolDown src/Dodge/Creature/Vocalization.hs 47;" f @@ -4821,7 +4821,7 @@ setTiles src/Dodge/Layout.hs 67;" f setTreeInts src/Dodge/Room/Tutorial.hs 98;" f setViewDistance src/Dodge/Update/Camera.hs 239;" f setViewPos src/Dodge/Creature/ReaderUpdate.hs 69;" f -setViewport src/Dodge/Render.hs 435;" f +setViewport src/Dodge/Render.hs 430;" f setVol src/Dodge/Config.hs 47;" f setWristShieldPos src/Dodge/Equipment.hs 49;" f setWristShieldPos src/Dodge/Euse.hs 38;" f