Commit before removing geometry shader from ellipses

This commit is contained in:
2025-11-20 16:30:41 +00:00
parent bbb682242d
commit cb64be4eeb
7 changed files with 117 additions and 101 deletions
+5
View File
@@ -3,6 +3,11 @@ layout (location = 0) in vec3 pos;
layout (location = 1) in vec4 col;
layout (std140, binding = 0) uniform TheMat { mat4 theMat; } ;
out vec4 vCol;
//const int ks[6] = //
// {0,1,2 // 2--3
// ,2,1,3 // | |
// }; // 0--1
// //
void main()
{
gl_Position = vec4(pos,1);
-1
View File
@@ -21,7 +21,6 @@ data RenderData = RenderData
, _windowPullShader :: GLuint
, _pullWallShader :: GLuint
, _fullscreenShader :: GLuint
-- , _transparencyCompShader :: GLuint
, _bloomBlurShader :: GLuint
, _barrelShader :: (GLuint,VBO)
, _shapeShader :: GLuint
+4 -6
View File
@@ -104,12 +104,10 @@ preloadRender = do
ceilingstencilshader <- makeSourcedShader "ceiling/stencil" [vert]
putStrLn "Setup 2D shaders"
bslist <- makeShaderVBO "dualTwoD/basic" [vert, frag] (toFloatVAs [3, 4]) pmTriangles
aslist <- makeShaderVBO "dualTwoD/arc" [vert, frag] (toFloatVAs [3, 4, 3]) pmTriangles
eslist <- makeShaderVBO "dualTwoD/ellipse" [vert, geom, frag] (toFloatVAs [3, 4]) pmTriangles
cslist <-
--makeShaderVBO "picture/charArray" [vert, frag] (toFloatVAs [3, 4, 4]) pmTriangles
makeShaderVBO "picture/charArray" [vert, frag] (toFloatVAs [3, 4, 3]) pmTriangles
bslist <- makeShaderVBO "dualTwoD/basic" [vert, frag] (toFloatVAs [3, 4])
aslist <- makeShaderVBO "dualTwoD/arc" [vert, frag] (toFloatVAs [3, 4, 3])
eslist <- makeShaderVBO "dualTwoD/ellipse" [vert, geom, frag] (toFloatVAs [3, 4])
cslist <- makeShaderVBO "picture/charArray" [vert, frag] (toFloatVAs [3, 4, 3])
shadV <- MV.new 4
zipWithM_
(MV.write shadV)
+8 -2
View File
@@ -14,6 +14,12 @@ drawShaderLay l countsVector shadIn fs = do
glUseProgram (_shaderUINT $ fst fs)
glBindVertexArray $ fs ^. _1 . shaderVAO . unVAO
glDrawArrays
(_unPrimitiveMode $ _shaderPrimitive $ fst fs)
GL_TRIANGLES
(fromIntegral $ l * numSubElements)
(fromIntegral i)
(drawCountMod shadIn i)
--(fromIntegral i)
drawCountMod :: Int -> Int -> GLsizei
drawCountMod i n
| i == 3 = fromIntegral n -- modifies ellipse draw count
| otherwise = fromIntegral n
+2 -3
View File
@@ -28,16 +28,15 @@ makeShaderVBO ::
[GLenum] ->
-- | The input vertex sizes
[VertexAttribute] ->
PrimitiveMode ->
IO (Shader, VBO)
makeShaderVBO s shaderlist sizes pm = do
makeShaderVBO s shaderlist sizes = do
prog <- makeSourcedShader s shaderlist
(vao, vbo) <- setupVBOVAO sizes
return
( Shader
{ _shaderUINT = prog
, _shaderVAO = vao
, _shaderPrimitive = pm
-- , _shaderPrimitive = pm
}
, vbo
)
+14 -14
View File
@@ -50,7 +50,7 @@ import Graphics.GL.Core45
-- | Datatype containing the necessary information for a single shader.
data Shader = Shader
{ _shaderUINT :: GLuint -- should be shaderID
, _shaderPrimitive :: PrimitiveMode
-- , _shaderPrimitive :: PrimitiveMode
, _shaderVAO :: VAO
}
@@ -104,7 +104,7 @@ newtype ShaderTexture = ShaderTexture
-- , _textureTarget :: GLenum
}
newtype PrimitiveMode = PrimitiveMode {_unPrimitiveMode :: GLenum}
--newtype PrimitiveMode = PrimitiveMode {_unPrimitiveMode :: GLenum}
-- | Short synonyms for shader types
vert, geom, frag :: GLenum
@@ -112,17 +112,17 @@ vert = GL_VERTEX_SHADER
geom = GL_GEOMETRY_SHADER
frag = GL_FRAGMENT_SHADER
pmPoints, pmLines, pmLinesAdjacency, pmLineLoop, pmLineStrip, pmTriangles, pmTriangleStrip, pmTriangleFan, pmQuads, pmPatches :: PrimitiveMode
pmPoints = PrimitiveMode GL_POINTS
pmLines = PrimitiveMode GL_LINES
pmLinesAdjacency = PrimitiveMode GL_LINES_ADJACENCY
pmLineLoop = PrimitiveMode GL_LINE_LOOP
pmLineStrip = PrimitiveMode GL_LINE_STRIP
pmTriangles = PrimitiveMode GL_TRIANGLES
pmTriangleStrip = PrimitiveMode GL_TRIANGLE_STRIP
pmTriangleFan = PrimitiveMode GL_TRIANGLE_FAN
pmQuads = PrimitiveMode GL_QUADS
pmPatches = PrimitiveMode GL_PATCHES
--pmPoints, pmLines, pmLinesAdjacency, pmLineLoop, pmLineStrip, pmTriangles, pmTriangleStrip, pmTriangleFan, pmQuads, pmPatches :: PrimitiveMode
--pmPoints = PrimitiveMode GL_POINTS
--pmLines = PrimitiveMode GL_LINES
--pmLinesAdjacency = PrimitiveMode GL_LINES_ADJACENCY
--pmLineLoop = PrimitiveMode GL_LINE_LOOP
--pmLineStrip = PrimitiveMode GL_LINE_STRIP
--pmTriangles = PrimitiveMode GL_TRIANGLES
--pmTriangleStrip = PrimitiveMode GL_TRIANGLE_STRIP
--pmTriangleFan = PrimitiveMode GL_TRIANGLE_FAN
--pmQuads = PrimitiveMode GL_QUADS
--pmPatches = PrimitiveMode GL_PATCHES
makeLenses ''VAO
makeLenses ''VBO
@@ -132,5 +132,5 @@ makeLenses ''ShaderTexture
makeLenses ''Shader
makeLenses ''FBO
makeLenses ''TO
makeLenses ''PrimitiveMode
--makeLenses ''PrimitiveMode
makeLenses ''VertexAttribute
+84 -75
View File
@@ -326,7 +326,7 @@ Dirt src/Dodge/Data/Material.hs 12;" C
DisasterType src/Dodge/Data/Scenario.hs 24;" t
DisplayTerminal src/Dodge/Data/HUD.hs 27;" C
Display_debug src/Dodge/Data/Config.hs 79;" C
Distortion src/Dodge/Data/Distortion.hs 10;" t
Distortion src/Dodge/Data/Distortion.hs 11;" t
DivineRetribution src/Dodge/Data/Scenario.hs 35;" C
DoActionIf src/Dodge/Data/ActionPlan.hs 87;" C
DoActionIfElse src/Dodge/Data/ActionPlan.hs 91;" C
@@ -1059,7 +1059,7 @@ RPLinkStatus src/Dodge/Data/Room.hs 58;" t
RProps src/Dodge/Layout/Generate.hs 13;" C
RadarBlip src/Dodge/Data/RadarBlip.hs 12;" t
RadarSweep src/Dodge/Data/RadarSweep.hs 17;" t
RadialDistortion src/Dodge/Data/Distortion.hs 10;" C
RadialDistortion src/Dodge/Data/Distortion.hs 11;" C
RandImpulse src/Dodge/Data/ActionPlan.hs 49;" t
RandImpulseCircMove src/Dodge/Data/ActionPlan.hs 51;" C
RandImpulseList src/Dodge/Data/ActionPlan.hs 50;" C
@@ -1488,7 +1488,7 @@ _allocOldPos src/Dodge/Data/RightButtonOptions.hs 26;" f
_allocOldPos src/Dodge/Data/RightButtonOptions.hs 33;" f
_allocRemoveID src/Dodge/Data/RightButtonOptions.hs 31;" f
_allocSwapID src/Dodge/Data/RightButtonOptions.hs 27;" f
_alphaDivideShader src/Data/Preload/Render.hs 19;" f
_alphaDivideShader src/Data/Preload/Render.hs 20;" f
_alteRifleSwitch src/Dodge/Data/Item/Params.hs 18;" f
_ambushTarget src/Dodge/Data/ActionPlan.hs 130;" f
_ampBullet src/Dodge/Data/Item/Use.hs 50;" f
@@ -1514,7 +1514,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 25;" f
_barrelShader src/Data/Preload/Render.hs 26;" 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
@@ -1532,7 +1532,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 24;" f
_bloomBlurShader src/Data/Preload/Render.hs 25;" 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,9 +1597,9 @@ _cdtUp src/Dodge/Data/DoubleTree.hs 85;" f
_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 18;" f
_chasmShader src/Data/Preload/Render.hs 46;" f
_chasmVBO src/Data/Preload/Render.hs 45;" 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
_chasms src/Dodge/Data/CWorld.hs 33;" f
_ciFilter src/Dodge/Data/HUD.hs 25;" f
_ciInvIDs src/Dodge/Data/Combine.hs 9;" f
@@ -1628,8 +1628,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 50;" f
_cloudVBO src/Data/Preload/Render.hs 49;" f
_cloudShader src/Data/Preload/Render.hs 51;" f
_cloudVBO src/Data/Preload/Render.hs 50;" 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
@@ -1758,7 +1758,7 @@ _dsZoning src/Dodge/Data/World.hs 48;" f
_dtLeft src/Dodge/Data/DoubleTree.hs 29;" f
_dtRight src/Dodge/Data/DoubleTree.hs 29;" f
_dtValue src/Dodge/Data/DoubleTree.hs 29;" f
_dummyVAO src/Data/Preload/Render.hs 51;" f
_dummyVAO src/Data/Preload/Render.hs 52;" f
_dusts src/Dodge/Data/LWorld.hs 97;" f
_ebID src/Dodge/Data/EnergyBall/Type.hs 13;" f
_ebPos src/Dodge/Data/EnergyBall.hs 17;" f
@@ -1768,15 +1768,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
_fbo2 src/Data/Preload/Render.hs 30;" f
_fboBase src/Data/Preload/Render.hs 33;" f
_fboBloom src/Data/Preload/Render.hs 36;" f
_fboCloud src/Data/Preload/Render.hs 34;" f
_fboHalf1 src/Data/Preload/Render.hs 31;" f
_fboHalf2 src/Data/Preload/Render.hs 32;" f
_fboLighting src/Data/Preload/Render.hs 38;" f
_fboPos src/Data/Preload/Render.hs 37;" f
_fboWindow src/Data/Preload/Render.hs 35;" f
_fbo2 src/Data/Preload/Render.hs 31;" 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
_fboHalf1 src/Data/Preload/Render.hs 32;" f
_fboHalf2 src/Data/Preload/Render.hs 33;" f
_fboLighting src/Data/Preload/Render.hs 39;" f
_fboPos src/Data/Preload/Render.hs 38;" f
_fboWindow src/Data/Preload/Render.hs 36;" 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
@@ -1790,13 +1790,13 @@ _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 44;" f
_floorVBO src/Data/Preload/Render.hs 43;" f
_floorShader src/Data/Preload/Render.hs 45;" f
_floorVBO src/Data/Preload/Render.hs 44;" 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
_fsSPic src/Dodge/Data/ForegroundShape.hs 15;" f
_fullscreenShader src/Data/Preload/Render.hs 22;" f
_fullscreenShader src/Data/Preload/Render.hs 23;" f
_futureWorlds src/Dodge/Data/World.hs 67;" f
_futureWorlds src/Dodge/Data/World.hs 73;" f
_gameplay_rotate_to_wall src/Dodge/Data/Config.hs 66;" f
@@ -1913,8 +1913,9 @@ _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 41;" f
_lightUBO src/Data/Preload/Render.hs 42;" 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
_lightingTextureShader src/Data/Preload/Render.hs 17;" f
_lights src/Dodge/Data/LWorld.hs 134;" f
@@ -1949,7 +1950,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 40;" f
_matUBO src/Data/Preload/Render.hs 41;" 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
@@ -2052,7 +2053,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 29;" f
_pictureShaders src/Data/Preload/Render.hs 30;" 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
@@ -2095,7 +2096,7 @@ _psRoomEff src/Dodge/Data/GenWorld.hs 96;" f
_psRoomRandPointNum src/Dodge/Data/GenWorld.hs 100;" f
_psRot src/Dodge/Data/GenWorld.hs 92;" f
_psSelect src/Dodge/Data/GenWorld.hs 95;" f
_pullWallShader src/Data/Preload/Render.hs 21;" f
_pullWallShader src/Data/Preload/Render.hs 22;" f
_pulseBalls src/Dodge/Data/LWorld.hs 115;" f
_pulseLasers src/Dodge/Data/LWorld.hs 114;" f
_pulseProgress src/Dodge/Data/Creature/Misc.hs 54;" f
@@ -2134,7 +2135,14 @@ _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 39;" f
_rboBaseBloom src/Data/Preload/Render.hs 40;" 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
_rdTB src/Dodge/Data/Distortion.hs 16;" f
_rdTG src/Dodge/Data/Distortion.hs 17;" f
_rdTR src/Dodge/Data/Distortion.hs 15;" f
_rdTime src/Dodge/Data/Distortion.hs 27;" f
_renderData src/Data/Preload.hs 11;" f
_respawnDelay src/Dodge/Data/World.hs 62;" f
_respawnPos src/Dodge/Data/LWorld.hs 145;" f
@@ -2227,9 +2235,9 @@ _shadWallShader src/Data/Preload/Render.hs 14;" f
_shaderPrimitive src/Shader/Data.hs 53;" f
_shaderUINT src/Shader/Data.hs 52;" f
_shaderVAO src/Shader/Data.hs 54;" f
_shapeEBO src/Data/Preload/Render.hs 27;" f
_shapeEBO src/Data/Preload/Render.hs 28;" f
_shapeHalfSize src/Shape/Data.hs 13;" f
_shapeShader src/Data/Preload/Render.hs 26;" f
_shapeShader src/Data/Preload/Render.hs 27;" 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
@@ -2241,7 +2249,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 28;" f
_silhouetteEBO src/Data/Preload/Render.hs 29;" 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
@@ -2342,7 +2350,6 @@ _toPlaySounds src/Dodge/Data/World.hs 39;" f
_topBoxSize src/Shape/Data.hs 12;" f
_tptString src/Dodge/Data/Terminal/Status.hs 15;" f
_tractorBeams src/Dodge/Data/LWorld.hs 117;" f
_transparencyCompShader src/Data/Preload/Render.hs 23;" f
_trieChildren src/SimpleTrie.hs 12;" f
_trieMVal src/SimpleTrie.hs 11;" f
_triggers src/Dodge/Data/LWorld.hs 126;" f
@@ -2406,7 +2413,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 42;" f
_vboShapes src/Data/Preload/Render.hs 43;" 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
@@ -2429,16 +2436,16 @@ _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 48;" f
_wallVBO src/Data/Preload/Render.hs 49;" 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 47;" f
_winVBO src/Data/Preload/Render.hs 48;" f
_windowPosX src/Dodge/Data/Config.hs 64;" f
_windowPosY src/Dodge/Data/Config.hs 65;" f
_windowPullShader src/Data/Preload/Render.hs 20;" f
_windowPullShader src/Data/Preload/Render.hs 21;" f
_windowX src/Dodge/Data/Config.hs 62;" f
_windowY src/Dodge/Data/Config.hs 63;" f
_wlHeight src/Dodge/Data/Wall.hs 25;" f
@@ -2649,15 +2656,15 @@ 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 231;" f
bindFBO src/Render.hs 233;" f
bingate src/Dodge/Item/Scope.hs 109;" f
black src/Color.hs 27;" f
blank src/Picture/Base.hs 59;" f
blinkAcrossChallenge src/Dodge/Room/BlinkAcross.hs 14;" f
blinkActionFail src/Dodge/Creature/Action/Blink.hs 86;" f
blinkActionFail src/Dodge/Creature/Action/Blink.hs 87;" f
blinkActionMousePos src/Dodge/Creature/Action/Blink.hs 24;" f
blinkDistortions src/Dodge/Creature/Action/Blink.hs 45;" f
blinkShockwave src/Dodge/Creature/Action/Blink.hs 77;" f
blinkShockwave src/Dodge/Creature/Action/Blink.hs 78;" f
blinker src/Dodge/Item/Held/Utility.hs 30;" f
blipAt src/Dodge/RadarSweep.hs 78;" f
blockLine src/Dodge/Placement/Instance/Wall.hs 52;" f
@@ -2706,7 +2713,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 400;" f
bufferPerspectiveMatrixUBO src/Dodge/Render.hs 402;" f
bufferPokedVBO src/Shader/Bind.hs 19;" f
bufferShaderLayers src/Shader/Bind.hs 32;" f
bulletBeltBracer src/Dodge/Item/Equipment.hs 67;" f
@@ -2807,7 +2814,7 @@ cleatSide src/Dodge/Cleat.hs 27;" f
click1S src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 582;" f
clicker src/Dodge/Item/Scope.hs 82;" f
clipV src/Geometry/Vector.hs 48;" f
clipZoom src/Dodge/Update/Camera.hs 233;" f
clipZoom src/Dodge/Update/Camera.hs 235;" f
clockCycle src/Dodge/Clock.hs 7;" f
closeButtonToSelectionItem src/Dodge/Inventory/SelectionList.hs 223;" f
closeItemToSelectionItem src/Dodge/Inventory/SelectionList.hs 208;" f
@@ -2884,7 +2891,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 219;" f
cornerList src/Preload/Render.hs 221;" f
corpseOrGib src/Dodge/Creature/Update.hs 111;" f
corridor src/Dodge/Room/Corridor.hs 17;" f
corridorBoss src/Dodge/LockAndKey.hs 133;" f
@@ -3207,7 +3214,7 @@ doTextInputOverUniverse src/Dodge/Update/Input/Text.hs 12;" f
doThrust src/Dodge/Projectile/Update.hs 129;" f
doTimeScroll src/Dodge/Update.hs 198;" f
doTmWdWd src/Dodge/WorldEffect.hs 94;" f
doWallRotate src/Dodge/Update/Camera.hs 223;" f
doWallRotate src/Dodge/Update/Camera.hs 225;" f
doWdBl src/Dodge/WorldBool.hs 10;" f
doWdCrBl src/Dodge/CreatureEffect.hs 18;" f
doWdP2f src/Dodge/WdP2f.hs 10;" f
@@ -3444,14 +3451,14 @@ extraWeaponLinksBelow src/Dodge/Item/Grammar.hs 99;" f
extractRoomPos src/Dodge/RoomPos.hs 6;" f
faceEdges src/Polyhedra.hs 65;" f
facesToVF src/Polyhedra/Geodesic.hs 69;" f
farWallDistDirection src/Dodge/Update/Camera.hs 244;" f
farWallDistDirection src/Dodge/Update/Camera.hs 246;" f
fdiv src/ShortShow.hs 41;" f
feet src/Dodge/Creature/Picture.hs 51;" f
ffoldM src/Framebuffer/Update.hs 85;" f
filter3 src/FoldableHelp.hs 76;" f
filterSectionsPair src/Dodge/DisplayInventory.hs 157;" f
findBlips src/Dodge/RadarSweep.hs 63;" f
findBoundDists src/Dodge/Update/Camera.hs 251;" f
findBoundDists src/Dodge/Update/Camera.hs 253;" f
findClosePoint src/Dodge/LevelGen/StaticWalls.hs 155;" f
findClosePoint src/Dodge/LevelGen/StaticWalls/Deprecated.hs 74;" f
findIndex src/IntMapHelp.hs 86;" f
@@ -3545,7 +3552,7 @@ geometryQuickCheckTests test/Spec.hs 55;" f
geometryTests test/Spec.hs 17;" f
geometryUnitTests test/Spec.hs 22;" f
geqConstr src/SameConstr.hs 21;" f
getAimZoom src/Dodge/Update/Camera.hs 146;" f
getAimZoom src/Dodge/Update/Camera.hs 148;" f
getAmmoLinks src/Dodge/Item/Grammar.hs 104;" f
getAttachedSFLink src/Dodge/HeldUse.hs 788;" f
getAutoSpringLinks src/Dodge/Item/Grammar.hs 85;" f
@@ -3559,7 +3566,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 412;" f
getDistortions src/Dodge/Render.hs 414;" f
getEdgesCrossing src/Dodge/Path.hs 37;" f
getGrenadeHitEffect src/Dodge/HeldUse.hs 1264;" f
getInventoryPath src/Dodge/Inventory/Path.hs 9;" f
@@ -3584,7 +3591,7 @@ getTiles src/Dodge/Layout.hs 199;" f
getViewpoints src/Dodge/Viewpoints.hs 29;" f
getVolleyBurst src/Dodge/HeldUse.hs 126;" f
getWallPathing src/Dodge/Wall/Pathing.hs 7;" f
getWallSPic src/Dodge/Render/Walls.hs 55;" f
getWallSPic src/Dodge/Render/Walls.hs 61;" f
getWindowSize src/Dodge/WindowSize.hs 6;" f
gimbal src/Dodge/Item/Scope.hs 153;" f
girder src/Dodge/Room/Foreground.hs 206;" f
@@ -3659,7 +3666,7 @@ healthAnalyserByDoor src/Dodge/Room/LasTurret.hs 81;" f
healthTest src/Dodge/Room/LasTurret.hs 122;" f
heightWallPS src/Dodge/Placement/Instance/Wall.hs 24;" f
heldAimStance src/Dodge/Item/AimStance.hs 24;" f
heldAimZoom src/Dodge/Update/Camera.hs 152;" f
heldAimZoom src/Dodge/Update/Camera.hs 154;" f
heldEffect src/Dodge/HeldUse.hs 60;" f
heldEffectMuzzles src/Dodge/HeldUse.hs 131;" f
heldHandlePos src/Dodge/Item/HeldOffset.hs 89;" f
@@ -3710,7 +3717,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 240;" f
initializeGLState src/Preload/Render.hs 242;" f
initializeOptionMenu src/Dodge/Menu/Option.hs 17;" f
initializeOptionMenuBO src/Dodge/Menu/Option.hs 30;" f
initializeTexture2D src/Framebuffer/Update.hs 214;" f
@@ -4178,7 +4185,7 @@ moveToSideNthOutLink src/Dodge/Room/Warning.hs 69;" f
moveWall src/Dodge/Wall/Move.hs 23;" f
moveWallID src/Dodge/Wall/Move.hs 18;" f
moveWallIDUnsafe src/Dodge/Wall/Move.hs 13;" f
moveZoomCamera src/Dodge/Update/Camera.hs 90;" f
moveZoomCamera src/Dodge/Update/Camera.hs 92;" f
mtTopLabels src/Dodge/Tree/Compose.hs 50;" f
mtUnderLabels src/Dodge/Tree/Compose.hs 53;" f
muchWlDustAt src/Dodge/Wall/Dust.hs 10;" f
@@ -4330,7 +4337,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 206;" f
pingPongBetween src/Render.hs 208;" 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
@@ -4565,6 +4572,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 397;" f
readSaveSlot src/Dodge/Save.hs 45;" f
recoilAmount src/Dodge/HeldUse.hs 467;" f
rectNSWE src/Geometry/Polygon.hs 15;" f
@@ -4602,13 +4610,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 27;" f
renderFlatLighting src/Render.hs 105;" f
renderFlatLighting src/Render.hs 104;" f
renderInfoListAt src/Dodge/Render/InfoBox.hs 17;" f
renderInfoListsAt src/Dodge/Render/InfoBox.hs 44;" f
renderLayer src/Render.hs 220;" f
renderLightingNoShadows src/Render.hs 52;" f
renderLayer src/Render.hs 222;" f
renderLightingNoShadows src/Render.hs 51;" f
renderListAt src/Dodge/Render/List.hs 192;" f
renderShadows src/Render.hs 120;" f
renderShadows src/Render.hs 119;" 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
@@ -4683,14 +4691,14 @@ rotate3 src/Geometry/Vector3D.hs 48;" f
rotate3x src/Geometry/Vector3D.hs 60;" f
rotate3y src/Geometry/Vector3D.hs 66;" f
rotate3z src/Geometry/Vector3D.hs 54;" f
rotateCamera src/Dodge/Update/Camera.hs 200;" f
rotateCamera src/Dodge/Update/Camera.hs 202;" f
rotateList src/Padding.hs 49;" f
rotateSH src/Shape.hs 257;" f
rotateSHq src/Shape.hs 166;" f
rotateSHx src/Shape.hs 265;" f
rotateSP src/ShapePicture.hs 57;" f
rotateTo src/Polyhedra/Geodesic.hs 64;" f
rotateToOverlappingWall src/Dodge/Update/Camera.hs 212;" f
rotateToOverlappingWall src/Dodge/Update/Camera.hs 214;" f
rotateToZ src/Quaternion.hs 35;" f
rotateV src/Geometry/Vector.hs 106;" f
rotateVAround src/Geometry/Vector.hs 113;" f
@@ -4815,10 +4823,11 @@ setTargetMv src/Dodge/Creature/ReaderUpdate.hs 83;" f
setTile src/Dodge/Layout.hs 70;" f
setTiles src/Dodge/Layout.hs 67;" f
setTreeInts src/Dodge/Room/Tutorial.hs 98;" f
setViewDistance src/Dodge/Update/Camera.hs 239;" f
setViewDistance src/Dodge/Update/Camera.hs 241;" f
setViewPos src/Dodge/Creature/ReaderUpdate.hs 69;" f
setViewport src/Dodge/Render.hs 417;" f
setViewport src/Dodge/Render.hs 419;" f
setVol src/Dodge/Config.hs 47;" f
setWindowColor src/Dodge/Render/Walls.hs 32;" f
setWristShieldPos src/Dodge/Equipment.hs 49;" f
setWristShieldPos src/Dodge/Euse.hs 38;" f
setupConLoop src/Loop.hs 103;" f
@@ -4893,9 +4902,9 @@ showEquipItem src/Dodge/Item/Display.hs 107;" f
showInt src/Dodge/Item/Info.hs 75;" f
showIntsString src/Dodge/Tree/Compose.hs 129;" f
showInventoryPathing src/Dodge/Item/Display.hs 86;" f
showManObj src/Dodge/TestString.hs 51;" f
showManObj src/Dodge/TestString.hs 52;" f
showTerminalError src/Dodge/Debug/Terminal.hs 80;" f
showTimeFlow src/Dodge/TestString.hs 74;" f
showTimeFlow src/Dodge/TestString.hs 75;" f
shrinkPolyOnEdges src/Geometry/Polygon.hs 175;" f
shrinkVert src/Geometry/Polygon.hs 179;" f
shuffle src/RandomHelp.hs 49;" f
@@ -5092,7 +5101,7 @@ terminalWheelEvent src/Dodge/Update/Scroll.hs 131;" f
teslaGun src/Dodge/Item/Held/BatteryGuns.hs 19;" f
teslaGunPic src/Dodge/Item/Draw/SPic.hs 409;" f
teslaParams src/Dodge/Item/Held/BatteryGuns.hs 25;" f
testEvent src/Dodge/Event/Test.hs 9;" f
testEvent src/Dodge/Event/Test.hs 10;" f
testInventory src/Dodge/Creature.hs 292;" f
testStringInit src/Dodge/TestString.hs 34;" f
text src/Picture/Base.hs 193;" f
@@ -5167,7 +5176,7 @@ tone440sawtoothquietS src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs 448;" f
topInvW src/Dodge/ListDisplayParams.hs 49;" f
topPrismEdgeIndices src/Shader/Poke.hs 334;" f
topPrismIndices src/Shader/Poke.hs 409;" f
topTestPart src/Dodge/TestString.hs 47;" f
topTestPart src/Dodge/TestString.hs 48;" f
torchShape src/Dodge/Item/Draw/SPic.hs 276;" f
torqueAmount src/Dodge/HeldUse.hs 581;" f
torqueCr src/Dodge/WorldEffect.hs 77;" f
@@ -5184,8 +5193,8 @@ transMat src/MatrixHelper.hs 87;" f
transToHandle src/Dodge/Item/HeldOffset.hs 26;" f
translate src/Picture/Base.hs 116;" f
translate3 src/Picture/Base.hs 120;" f
translateFloatingCamera src/Dodge/Update/Camera.hs 47;" f
translateFloatingCameraKeys src/Dodge/Update/Camera.hs 64;" f
translateFloatingCamera src/Dodge/Update/Camera.hs 48;" f
translateFloatingCameraKeys src/Dodge/Update/Camera.hs 66;" f
translateH src/Picture/Base.hs 112;" f
translatePointToLeftHand src/Dodge/Creature/HandPos.hs 75;" f
translatePointToRightHand src/Dodge/Creature/HandPos.hs 36;" f
@@ -5267,7 +5276,7 @@ unigate src/Dodge/Item/Scope.hs 102;" f
unitVectorAtAngle src/Geometry/Vector.hs 101;" f
unlockInv src/Dodge/Inventory/Lock.hs 12;" f
unpause src/Dodge/Menu.hs 207;" f
unsafeBlinkAction src/Dodge/Creature/Action/Blink.hs 57;" f
unsafeBlinkAction src/Dodge/Creature/Action/Blink.hs 58;" f
unsafeBlinker src/Dodge/Item/Held/Utility.hs 33;" f
unsafeSwapKeys src/IntMapHelp.hs 75;" f
unshadowBlock src/Dodge/Block.hs 14;" f
@@ -5284,7 +5293,7 @@ updateBackspaceRegex src/Dodge/Update/Input/InGame.hs 478;" f
updateBarrel src/Dodge/Barreloid.hs 44;" f
updateBarreloid src/Dodge/Barreloid.hs 16;" f
updateBaseWheelEvent src/Dodge/Update/Scroll.hs 34;" f
updateBounds src/Dodge/Update/Camera.hs 261;" f
updateBounds src/Dodge/Update/Camera.hs 263;" f
updateBulVel src/Dodge/Bullet.hs 57;" f
updateBullet src/Dodge/Bullet.hs 22;" f
updateBullets src/Dodge/Update.hs 563;" f
@@ -5303,7 +5312,7 @@ updateDebrisChunk src/Dodge/Prop/Moving.hs 16;" f
updateDebugMessageOffset src/Dodge/Update.hs 95;" f
updateDelayedEvents src/Dodge/Update.hs 888;" f
updateDisplaySections src/Dodge/DisplayInventory.hs 116;" f
updateDistortion src/Dodge/Distortion.hs 6;" f
updateDistortion src/Dodge/Distortion.hs 8;" f
updateDistortions src/Dodge/Update.hs 556;" f
updateDoor src/Dodge/Door.hs 22;" f
updateDoors src/Dodge/Update.hs 308;" f
@@ -5328,7 +5337,7 @@ updateFunctionKeys src/Dodge/Update/Input/InGame.hs 359;" f
updateGusts src/Dodge/Update.hs 779;" f
updateIMl src/Dodge/Update.hs 529;" f
updateIMl' src/Dodge/Update.hs 532;" f
updateInGameCamera src/Dodge/Update/Camera.hs 82;" f
updateInGameCamera src/Dodge/Update/Camera.hs 84;" f
updateInitialPressInGame src/Dodge/Update/Input/InGame.hs 428;" f
updateInt2Map src/Dodge/Zoning/Base.hs 94;" f
updateInventoryPositioning src/Dodge/DisplayInventory.hs 86;" f
@@ -5456,7 +5465,7 @@ verticalWire src/Dodge/Wire.hs 23;" f
vgunMuzzles src/Dodge/HeldUse.hs 341;" f
viewBoundaries src/Dodge/Debug/Picture.hs 331;" f
viewClipBounds src/Dodge/Debug/Picture.hs 340;" f
viewDistanceFromItems src/Dodge/Update/Camera.hs 197;" f
viewDistanceFromItems src/Dodge/Update/Camera.hs 199;" f
viewTarget src/Dodge/Creature/ReaderUpdate.hs 155;" f
violet src/Color.hs 21;" f
visibleWalls src/Dodge/Base/Collide.hs 216;" f
@@ -5471,7 +5480,7 @@ wallBuffer src/Dodge/WallCreatureCollisions.hs 54;" f
wallIsZeroLength src/Dodge/LevelGen/StaticWalls.hs 179;" f
wallToSurface src/Dodge/Base/Collide.hs 180;" f
wallsFromRooms src/Dodge/Layout.hs 137;" f
wallsToDraw src/Dodge/Render/Walls.hs 16;" f
wallsToDraw src/Dodge/Render/Walls.hs 18;" f
warmupSound src/Dodge/HeldUse.hs 1376;" f
warningRooms src/Dodge/Room/Warning.hs 30;" f
wasdAim src/Dodge/Creature/YourControl.hs 133;" f
@@ -5519,8 +5528,8 @@ wlIXsNearRect src/Dodge/Zoning/Wall.hs 29;" f
wlIXsNearSeg src/Dodge/Zoning/Wall.hs 25;" f
wlIsOpaque src/Dodge/Base/Wall.hs 6;" f
wlIsSeeThrough src/Dodge/Base/Wall.hs 11;" f
wlOpaqueDraw src/Dodge/Render/Walls.hs 47;" f
wlSeeThroughDraw src/Dodge/Render/Walls.hs 50;" f
wlOpaqueDraw src/Dodge/Render/Walls.hs 53;" f
wlSeeThroughDraw src/Dodge/Render/Walls.hs 56;" f
wlZoneSize src/Dodge/Zoning/Wall.hs 52;" f
wlsFromIXs src/Dodge/Zoning/Wall.hs 35;" f
wlsHit src/Dodge/WorldEvent/ThingsHit.hs 139;" f
@@ -5593,7 +5602,7 @@ zonePn src/Dodge/Zoning/Pathing.hs 32;" f
zoneWall src/Dodge/Zoning/Wall.hs 65;" f
zonesAroundPoint src/Dodge/Zoning/Base.hs 98;" f
zonesExtract src/Dodge/Zoning/Base.hs 62;" f
zoomFloatingCamera src/Dodge/Update/Camera.hs 74;" f
zoomFloatingCamera src/Dodge/Update/Camera.hs 76;" f
zoomInLongGun src/Dodge/Update/Scroll.hs 105;" f
zoomOutLongGun src/Dodge/Update/Scroll.hs 113;" f
zoomScope src/Dodge/Item/Scope.hs 33;" f