Make clouds use specific upscale filter, break cloud render over walls

This commit is contained in:
2025-12-02 12:43:56 +00:00
parent 25efce7a89
commit c89d5af6a3
7 changed files with 168 additions and 40 deletions
+106
View File
@@ -0,0 +1,106 @@
#version 450 core
in vec2 vTexPos;
out vec4 fColor;
layout (location = 0) uniform vec2 screensize;
layout(binding = 0) uniform sampler2D screenTexture;
vec3 f (float x, float y)
//{ return texture(screenTexture, vTexPos + vec2((x+0.5)/screensize.x,(y+0.5)/screensize.y)).xyz;
{ return texture(screenTexture, vTexPos + vec2(x/screensize.x,y/screensize.y)).xyz;
}
bool t (vec3 x, vec3 y)
{ return dot(x-y,x-y) < 0.005;
}
bool t3 (vec3 x, vec3 y, vec3 z)
{ return t(x,y) && t(y,z);
}
vec3 c = f(0,0);
bool bt (vec3 x, vec3 y)
{ return x.x+x.y+x.z > y.x+y.y+y.z;}
bool t4 (vec3 x, vec3 y, vec3 z)
{ return t(x,z) && (t(x,y) || bt(x,c)) ; }
bool incenter (int x) { return x > 0 && x < 3; }
int three = int(( floor(vTexPos.y * screensize.y))) % 3;
int i = int(( floor(vTexPos.x * screensize.x))) % 4;
int j = int(( floor(vTexPos.y * screensize.y))) % 4;
vec4 edgecase (vec3 e1, vec3 e2)
{ return vec4((t(e1,e2) && bt(e1,c) ? e1 : c),1); }
vec4 ttlcase (vec3 tt, vec3 tr, vec3 mr, vec3 br, vec3 bb, vec3 bl, vec3 ml, vec3 tl)
{
if (t(tl,tt) && t(tl,mr))
{return vec4(tl,1);}
if (t(tl,tt) && t(tl,ml))
{return vec4(tt,1);}
// if (t(tt,mr) && bt(tt,c))
// {return vec4(tt,1);}
return vec4(c,1);
}
vec4 corncase (vec3 e1, vec3 e2, vec3 corn)
{ return vec4( (t(e1,e2) && false == (t(corn,c)) ? e1 : c) , 1);}
//{ return vec4( (t(e1,e2) ? e1 : c) , 1);}
void main()
{
vec3 tl = f(-4, 4);
vec3 tt = f( 0, 4);
vec3 tr = f( 4, 4);
vec3 mr = f( 4, 0);
vec3 br = f( 4,-4);
vec3 bb = f( 0,-4);
vec3 bl = f(-4,-4);
vec3 ml = f(-4, 0);
vec3 tlc = f(-1, 1);
vec3 trc = f( 1, 1);
vec3 brc = f( 1,-1);
vec3 blc = f(-1,-1);
// if (t4(tl,tr,br))
// { fColor = vec4(tl,1);}
// else if (t4(tr,br,bl))
// { fColor = vec4(tr,1);}
// else if (t4(br,bl,tl))
// { fColor = vec4(br,1);}
// else if (t4(bl,tl,tr))
// { fColor = vec4(bl,1);}
if (incenter(i) && incenter(j))
{fColor = vec4(c,1); }
else
{ fColor = vec4(0,0,0,1);
switch (i * 10 + j) {
case 10:
fColor = ttlcase(bb,br,mr,tr,tt,tl,ml,bl);
break;
case 01:
fColor = ttlcase(ml,tl,tt,tr,mr,br,bb,bl);
break;
case 13:
fColor = ttlcase(tt,tr,mr,br,bb,bl,ml,tl);
break;
case 02:
fColor = ttlcase(ml,bl,bb,br,mr,tr,tt,tl);
break;
case 23:
fColor = ttlcase(tt,tl,ml,bl,bb,br,mr,tr);
break;
case 32:
fColor = ttlcase(mr,br,bb,bl,ml,tl,tt,tr);
break;
case 20:
fColor = ttlcase(bb,bl,ml,tl,tt,tr,mr,br);
break;
case 31:
fColor = ttlcase(mr,tr,tt,tl,ml,bl,bb,br);
break;
case 00:
fColor = corncase(ml,bb,bl);
break;
case 03:
fColor = corncase(ml,tt,tl);
break;
case 33:
fColor = corncase(mr,tt,tr);
break;
case 30:
fColor = corncase(mr,bb,br);
break;
}
}
fColor.a = texture(screenTexture, vTexPos).a;
}
+7
View File
@@ -0,0 +1,7 @@
#version 450 core
layout (std140, binding = 2) uniform PosTex { vec4 posTex[3]; };
out vec2 vTexPos;
void main() {
gl_Position = vec4(posTex[gl_VertexID].xy,0,1);
vTexPos = posTex[gl_VertexID].zw ;
}
+1
View File
@@ -22,6 +22,7 @@ data RenderData = RenderData
, _pullWallShader :: GLuint
, _fullscreenShader :: GLuint
, _textureAntiaShader :: GLuint
, _upscaleCloudShader :: GLuint
, _bloomBlurShader :: GLuint
, _barrelShader :: (GLuint,VBO)
, _shapeShader :: GLuint
+16 -7
View File
@@ -251,7 +251,7 @@ doDrawing' win pdata u = do
when (_gr_cloud_shadows cfig) $ do
----render transparency depths
-- glDepthMask GL_TRUE
-- glDepthMask GL_TRUE
glDepthMask GL_TRUE
glDepthFunc GL_ALWAYS
withArray [GL_NONE, GL_COLOR_ATTACHMENT1, GL_COLOR_ATTACHMENT2] $
glNamedFramebufferDrawBuffers (pdata ^. fboCloud . _1 . unFBO) 3
@@ -305,7 +305,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
@@ -335,19 +335,26 @@ doDrawing' win pdata u = do
glDrawArrays GL_TRIANGLES 0 3
glBlendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA
-- bind base buffer for drawing clouds and bloom
glBindFramebuffer GL_FRAMEBUFFER (pdata ^. fboBase . _1 . unFBO)
--glBindFramebuffer GL_FRAMEBUFFER (pdata ^. fboBase . _1 . unFBO)
glBindFramebuffer GL_FRAMEBUFFER (pdata ^. fboFullscreen . _1 . unFBO)
setViewport (const FullRes) cfig
glUseProgram (pdata ^. fullscreenShader)
glBindTextureUnit 0 (pdata ^. fboBase . _2 . _1 . unTO)
glDisable GL_BLEND
glDrawArrays GL_TRIANGLES 0 3
glEnable GL_BLEND
glBindTextureUnit 0 (pdata ^. fboWindow . _2 . _2 . unTO)
glBlendFunc GL_DST_COLOR GL_ONE_MINUS_SRC_ALPHA
--glDrawArrays GL_TRIANGLES 0 6
glDrawArrays GL_TRIANGLES 0 3
glBindTextureUnit 0 (pdata ^. fboCloud . _2 . _1 . unTO)
glUseProgram (pdata ^. upscaleCloudShader)
glUniform2f 0 (windowXFloat cfig) (windowYFloat cfig)
glBlendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA
--glDrawArrays GL_TRIANGLES 0 6
glDrawArrays GL_TRIANGLES 0 3
glUseProgram (pdata ^. fullscreenShader)
glBindTextureUnit 0 (pdata ^. fboWindow . _2 . _1 . unTO)
glBlendFunc GL_DST_COLOR GL_ONE_MINUS_SRC_ALPHA
--glDrawArrays GL_TRIANGLES 0 6
glDrawArrays GL_TRIANGLES 0 3
--Draw blurred bloom onto base buffer
@@ -367,7 +374,8 @@ doDrawing' win pdata u = do
-- perform distortions
case getDistortions cfig w of
[] -> do
glBindTextureUnit 0 $ pdata ^. fboBase . _2 . _1 . unTO
-- glBindTextureUnit 0 $ pdata ^. fboBase . _2 . _1 . unTO
glBindTextureUnit 0 $ pdata ^. fboFullscreen . _2 . unTO
glBindFramebuffer GL_FRAMEBUFFER 0
if (cfig ^. gr_upscale_filter) then do
glUseProgram (pdata ^. textureAntiaShader)
@@ -382,7 +390,8 @@ doDrawing' win pdata u = do
withArray (concatMap rdToVec2s rs) $
glNamedBufferSubData (pdata ^. barrelShader . _2 . vboName) 0
(24 * fromIntegral (length rs * sizeOf (0 :: Float)))
glBindTextureUnit 1 $ pdata ^. fboBase . _2 . _1 . unTO
-- glBindTextureUnit 1 $ pdata ^. fboBase . _2 . _1 . unTO
glBindTextureUnit 1 $ pdata ^. fboFullscreen . _2 . unTO
glUseProgram (pdata ^. barrelShader . _1)
glUniform1i 0 (fromIntegral (length rs))
--glDrawArrays GL_TRIANGLES 0 6
+2
View File
@@ -7,6 +7,7 @@ module Dodge.Wall.Damage (
damageWall,
) where
import Control.Monad
import Data.Foldable
import qualified Data.IntMap.Strict as IM
import Data.Maybe
@@ -48,6 +49,7 @@ damageBlock = \case
damageGlassBlock :: Int -> Int -> World -> (S.Set Int2, World)
damageGlassBlock x i w = fromMaybe (mempty,w) $ do
guard $ x > 0
bl <- w ^? cWorld . lWorld . blocks . ix i
return $ case bl ^. blHP - x of
y | y > 0 -> (mempty, w
+2
View File
@@ -134,6 +134,7 @@ preloadRender = do
alphadivideshader <- makeSourcedShader "texture2D/alphaDivide" [vert, frag]
fsShad <- makeSourcedShader "texture/simple" [vert, frag]
textureantiashad <- makeSourcedShader "texture/antia" [vert,frag]
upscalecloud <- makeSourcedShader "upscale/cloud" [vert, frag]
bloomBlurShad <- makeSourcedShader "texture/bloomBlur" [vert, frag]
lightingTextureShad <- makeSourcedShader "lighting/texture" [vert, frag]
lightingCloudShad <- makeSourcedShader "lighting/cloud" [vert, frag]
@@ -201,6 +202,7 @@ preloadRender = do
, _pullWallShader = wallpull
, _textureAntiaShader = textureantiashad
, _fullscreenShader = fsShad
, _upscaleCloudShader = upscalecloud
, _alphaDivideShader = alphadivideshader
, _lightingTextureShader = lightingTextureShad
, _lightingCloudShader = lightingCloudShad
+34 -33
View File
@@ -1513,7 +1513,7 @@ _avMoveSpeed src/Dodge/Data/Creature/Misc.hs 65;" f
_avStrength src/Dodge/Data/Creature/Misc.hs 62;" f
_avatarMaterial src/Dodge/Data/Creature/Misc.hs 61;" f
_avatarPulse src/Dodge/Data/Creature/Misc.hs 60;" f
_barrelShader src/Data/Preload/Render.hs 26;" f
_barrelShader src/Data/Preload/Render.hs 27;" f
_barrelType src/Dodge/Data/Creature/Misc.hs 71;" f
_bdColor src/Dodge/Data/Prop.hs 23;" f
_bdMaxX src/Dodge/Data/Bounds.hs 12;" f
@@ -1531,7 +1531,7 @@ _blPos src/Dodge/Data/Block.hs 26;" f
_blShadows src/Dodge/Data/Block.hs 24;" f
_blWallIDs src/Dodge/Data/Block.hs 22;" f
_blocks src/Dodge/Data/LWorld.hs 125;" f
_bloomBlurShader src/Data/Preload/Render.hs 25;" f
_bloomBlurShader src/Data/Preload/Render.hs 26;" f
_bmColor src/Dodge/Data/Beam.hs 21;" f
_bmDamage src/Dodge/Data/Beam.hs 20;" f
_bmDir src/Dodge/Data/Beam.hs 19;" f
@@ -1597,8 +1597,8 @@ _cdtUp src/Dodge/Data/DoubleTree.hs 92;" f
_ceSideEffect src/Dodge/Data/Universe.hs 66;" f
_ceString src/Dodge/Data/Universe.hs 67;" f
_ceilingStencilShader src/Data/Preload/Render.hs 19;" f
_chasmShader src/Data/Preload/Render.hs 47;" f
_chasmVBO src/Data/Preload/Render.hs 46;" f
_chasmShader src/Data/Preload/Render.hs 48;" f
_chasmVBO src/Data/Preload/Render.hs 47;" f
_chasms src/Dodge/Data/CWorld.hs 33;" f
_ciFilter src/Dodge/Data/HUD.hs 25;" f
_ciInvIDs src/Dodge/Data/Combine.hs 9;" f
@@ -1627,8 +1627,8 @@ _clickPos src/Dodge/Data/Input.hs 42;" f
_clickWorldPos src/Dodge/Data/Input.hs 44;" f
_closeButtons src/Dodge/Data/HUD.hs 36;" f
_closeItems src/Dodge/Data/HUD.hs 35;" f
_cloudShader src/Data/Preload/Render.hs 51;" f
_cloudVBO src/Data/Preload/Render.hs 50;" f
_cloudShader src/Data/Preload/Render.hs 52;" f
_cloudVBO src/Data/Preload/Render.hs 51;" f
_clouds src/Dodge/Data/LWorld.hs 96;" f
_coolEnd src/Dodge/Data/TriggerType.hs 17;" f
_coolSound src/Dodge/Data/Item/Params.hs 22;" f
@@ -1766,15 +1766,15 @@ _ebVel src/Dodge/Data/EnergyBall.hs 16;" f
_emoMenuOption src/Dodge/Data/Universe.hs 77;" f
_energyBalls src/Dodge/Data/LWorld.hs 104;" f
_fbSize src/Dodge/Data/EnergyBall/Type.hs 12;" f
_fboBase src/Data/Preload/Render.hs 34;" f
_fboBloom src/Data/Preload/Render.hs 37;" f
_fboCloud src/Data/Preload/Render.hs 35;" f
_fboFullscreen src/Data/Preload/Render.hs 31;" f
_fboHalf src/Data/Preload/Render.hs 32;" f
_fboLighting src/Data/Preload/Render.hs 39;" f
_fboPos src/Data/Preload/Render.hs 38;" f
_fboQuarter src/Data/Preload/Render.hs 33;" f
_fboWindow src/Data/Preload/Render.hs 36;" f
_fboBase src/Data/Preload/Render.hs 35;" f
_fboBloom src/Data/Preload/Render.hs 38;" f
_fboCloud src/Data/Preload/Render.hs 36;" f
_fboFullscreen src/Data/Preload/Render.hs 32;" f
_fboHalf src/Data/Preload/Render.hs 33;" f
_fboLighting src/Data/Preload/Render.hs 40;" f
_fboPos src/Data/Preload/Render.hs 39;" f
_fboQuarter src/Data/Preload/Render.hs 34;" f
_fboWindow src/Data/Preload/Render.hs 37;" f
_flItPos src/Dodge/Data/FloorItem.hs 11;" f
_flItRot src/Dodge/Data/FloorItem.hs 11;" f
_flPos src/Dodge/Data/Flame.hs 13;" f
@@ -1788,8 +1788,8 @@ _flboName src/Shader/Data.hs 86;" f
_flboPtr src/Shader/Data.hs 87;" f
_flboStride src/Shader/Data.hs 88;" f
_floorItems src/Dodge/Data/LWorld.hs 127;" f
_floorShader src/Data/Preload/Render.hs 45;" f
_floorVBO src/Data/Preload/Render.hs 44;" f
_floorShader src/Data/Preload/Render.hs 46;" f
_floorVBO src/Data/Preload/Render.hs 45;" f
_foreShapes src/Dodge/Data/LWorld.hs 132;" f
_fsDir src/Dodge/Data/ForegroundShape.hs 14;" f
_fsPos src/Dodge/Data/ForegroundShape.hs 13;" f
@@ -1911,7 +1911,7 @@ _ldtRight src/Dodge/Data/DoubleTree.hs 35;" f
_ldtValue src/Dodge/Data/DoubleTree.hs 33;" f
_leadTargetBy src/Dodge/Data/ActionPlan.hs 115;" f
_lightSources src/Dodge/Data/LWorld.hs 133;" f
_lightUBO src/Data/Preload/Render.hs 42;" f
_lightUBO src/Data/Preload/Render.hs 43;" f
_lightingCapShader src/Data/Preload/Render.hs 16;" f
_lightingCloudShader src/Data/Preload/Render.hs 18;" f
_lightingLineShadowShader src/Data/Preload/Render.hs 15;" f
@@ -1948,7 +1948,7 @@ _manObject src/Dodge/Data/Item/Use/Consumption/LoadAction.hs 15;" f
_mapInvItmID src/Dodge/Data/HUD.hs 20;" f
_mapInvOffset src/Dodge/Data/HUD.hs 18;" f
_mapInvZoom src/Dodge/Data/HUD.hs 19;" f
_matUBO src/Data/Preload/Render.hs 41;" f
_matUBO src/Data/Preload/Render.hs 42;" f
_mbAttach src/Dodge/Data/MetaTree.hs 18;" f
_mbTree src/Dodge/Data/MetaTree.hs 18;" f
_mcColor src/Dodge/Data/Machine.hs 34;" f
@@ -2051,7 +2051,7 @@ _phRemoteID src/Dodge/Data/Projectile.hs 41;" f
_phTargetingID src/Dodge/Data/Projectile.hs 42;" f
_pickUpLevel src/Dodge/Layout/Generate.hs 14;" f
_pickUps src/Dodge/Layout/Generate.hs 15;" f
_pictureShaders src/Data/Preload/Render.hs 30;" f
_pictureShaders src/Data/Preload/Render.hs 31;" f
_piercedPoints src/Dodge/Data/Creature/Misc.hs 87;" f
_pjBarrelSpin src/Dodge/Data/Projectile.hs 23;" f
_pjDetonatorID src/Dodge/Data/Projectile.hs 25;" f
@@ -2133,7 +2133,7 @@ _rbPos src/Dodge/Data/RadarBlip.hs 17;" f
_rbRad src/Dodge/Data/RadarBlip.hs 16;" f
_rbState src/Dodge/Data/World.hs 43;" f
_rbTime src/Dodge/Data/RadarBlip.hs 14;" f
_rboBaseBloom src/Data/Preload/Render.hs 40;" f
_rboBaseBloom src/Data/Preload/Render.hs 41;" f
_rdDist1 src/Dodge/Data/Distortion.hs 13;" f
_rdDist2 src/Dodge/Data/Distortion.hs 14;" f
_rdPos src/Dodge/Data/Distortion.hs 12;" f
@@ -2232,9 +2232,9 @@ _sfVs src/Shape/Data.hs 39;" f
_shadWallShader src/Data/Preload/Render.hs 14;" f
_shaderUINT src/Shader/Data.hs 52;" f
_shaderVAO src/Shader/Data.hs 54;" f
_shapeEBO src/Data/Preload/Render.hs 28;" f
_shapeEBO src/Data/Preload/Render.hs 29;" f
_shapeHalfSize src/Shape/Data.hs 13;" f
_shapeShader src/Data/Preload/Render.hs 27;" f
_shapeShader src/Data/Preload/Render.hs 28;" f
_shellPayload src/Dodge/Data/Item/Combine.hs 101;" f
_shockwaves src/Dodge/Data/LWorld.hs 112;" f
_siColor src/Dodge/Data/SelectionList.hs 47;" f
@@ -2246,7 +2246,7 @@ _siPictures src/Dodge/Data/SelectionList.hs 43;" f
_siWidth src/Dodge/Data/SelectionList.hs 45;" f
_sideEffect src/Loop/Data.hs 13;" f
_sideImpulses src/Dodge/Data/ActionPlan.hs 122;" f
_silhouetteEBO src/Data/Preload/Render.hs 29;" f
_silhouetteEBO src/Data/Preload/Render.hs 30;" f
_skOldPos src/Dodge/Data/Spark.hs 14;" f
_skPos src/Dodge/Data/Spark.hs 13;" f
_skType src/Dodge/Data/Spark.hs 15;" f
@@ -2378,6 +2378,7 @@ _unVAO src/Shader/Data.hs 64;" f
_unfiredBarrels src/Dodge/Data/Item/Params.hs 17;" f
_unpauseClock src/Dodge/Data/World.hs 56;" f
_unputTerminal src/Dodge/Data/GenWorld.hs 42;" f
_upscaleCloudShader src/Data/Preload/Render.hs 25;" f
_useExactly src/Dodge/Data/Muzzle.hs 62;" f
_useMapperLines src/Dodge/Data/Item/Use.hs 38;" f
_useMapperPoints src/Dodge/Data/Item/Use.hs 39;" f
@@ -2410,7 +2411,7 @@ _vaOffset src/Shader/Data.hs 70;" f
_vaType src/Shader/Data.hs 68;" f
_vboName src/Shader/Data.hs 80;" f
_vboPtr src/Shader/Data.hs 81;" f
_vboShapes src/Data/Preload/Render.hs 43;" f
_vboShapes src/Data/Preload/Render.hs 44;" f
_vboVertexBytes src/Shader/Data.hs 82;" f
_vcCoolDown src/Dodge/Data/Creature/Misc.hs 22;" f
_vcMaxCoolDown src/Dodge/Data/Creature/Misc.hs 21;" f
@@ -2433,13 +2434,13 @@ _wTime src/Dodge/Data/Item/Params.hs 20;" f
_waitThenAction src/Dodge/Data/ActionPlan.hs 76;" f
_waitThenTimer src/Dodge/Data/ActionPlan.hs 75;" f
_wallDamages src/Dodge/Data/LWorld.hs 119;" f
_wallVBO src/Data/Preload/Render.hs 49;" f
_wallVBO src/Data/Preload/Render.hs 50;" f
_walls src/Dodge/Data/LWorld.hs 118;" f
_wanID src/Dodge/Data/LWorld.hs 158;" f
_wanPos src/Dodge/Data/LWorld.hs 157;" f
_warmMax src/Dodge/Data/TriggerType.hs 19;" f
_warmStart src/Dodge/Data/TriggerType.hs 15;" f
_winVBO src/Data/Preload/Render.hs 48;" f
_winVBO src/Data/Preload/Render.hs 49;" f
_windowPosX src/Dodge/Data/Config.hs 64;" f
_windowPosY src/Dodge/Data/Config.hs 65;" f
_windowPullShader src/Data/Preload/Render.hs 21;" f
@@ -2709,7 +2710,7 @@ brightX src/Color.hs 116;" f
btSPic src/Dodge/Render/ShapePicture.hs 131;" f
btText src/Dodge/Inventory/SelectionList.hs 237;" f
bufferEBO src/Shader/Bind.hs 28;" f
bufferPerspectiveMatrixUBO src/Dodge/Render.hs 411;" f
bufferPerspectiveMatrixUBO src/Dodge/Render.hs 421;" f
bufferPokedVBO src/Shader/Bind.hs 19;" f
bufferShaderLayers src/Shader/Bind.hs 32;" f
bulletBeltBracer src/Dodge/Item/Equipment.hs 67;" f
@@ -2886,7 +2887,7 @@ copier src/Dodge/Item/Scope.hs 88;" f
copierItemUpdate src/Dodge/Creature/State.hs 131;" f
copyItemToFloor src/Dodge/FloorItem.hs 14;" f
corDoor src/Dodge/Room/Room.hs 385;" f
cornerList src/Preload/Render.hs 234;" f
cornerList src/Preload/Render.hs 236;" f
corpseOrGib src/Dodge/Creature/Update.hs 88;" f
corridor src/Dodge/Room/Corridor.hs 17;" f
corridorBoss src/Dodge/LockAndKey.hs 133;" f
@@ -3565,7 +3566,7 @@ getCrMoveSpeed src/Dodge/Creature/Statistics.hs 50;" f
getCrsFromRooms src/Dodge/Room/Tutorial.hs 338;" f
getCrsFromRooms' src/Dodge/Room/Tutorial.hs 325;" f
getDebugMouseOver src/Dodge/Update.hs 374;" f
getDistortions src/Dodge/Render.hs 423;" f
getDistortions src/Dodge/Render.hs 433;" f
getEdgesCrossing src/Dodge/Path.hs 37;" f
getGrenadeHitEffect src/Dodge/HeldUse.hs 1264;" f
getInventoryPath src/Dodge/Inventory/Path.hs 9;" f
@@ -3717,7 +3718,7 @@ initWallZoning src/Dodge/Wall/Zone.hs 12;" f
initialRoomTree src/Dodge/Floor.hs 24;" f
initialWorld src/Dodge/Initialisation.hs 15;" f
initialisePlaying src/Sound.hs 77;" f
initializeGLState src/Preload/Render.hs 253;" f
initializeGLState src/Preload/Render.hs 255;" f
initializeOptionMenu src/Dodge/Menu/Option.hs 17;" f
initializeOptionMenuBO src/Dodge/Menu/Option.hs 30;" f
initializeTexture2D src/Framebuffer/Update.hs 220;" f
@@ -4566,7 +4567,7 @@ randomTreeStructure src/Dodge/Layout/Generate.hs 18;" f
randsOnCirc src/RandomHelp.hs 127;" f
randsSpread src/RandomHelp.hs 120;" f
ratIntersectLineLine src/Geometry/Intersect.hs 216;" f
rdToVec2s src/Dodge/Render.hs 406;" f
rdToVec2s src/Dodge/Render.hs 416;" f
readSaveSlot src/Dodge/Save.hs 45;" f
recoilAmount src/Dodge/HeldUse.hs 467;" f
rectNSWE src/Geometry/Polygon.hs 15;" f
@@ -4821,7 +4822,7 @@ setTiles src/Dodge/Layout.hs 67;" f
setTreeInts src/Dodge/Room/Tutorial.hs 79;" f
setViewDistance src/Dodge/Update/Camera.hs 241;" f
setViewPos src/Dodge/Creature/ReaderUpdate.hs 69;" f
setViewport src/Dodge/Render.hs 428;" f
setViewport src/Dodge/Render.hs 438;" f
setVol src/Dodge/Config.hs 47;" f
setWindowColor src/Dodge/Render/Walls.hs 32;" f
setWristShieldPos src/Dodge/Equipment.hs 49;" f