Use vertex pulling for ceiling stencil
This commit is contained in:
+3
-12
@@ -136,22 +136,13 @@ doDrawing' win pdata u = do
|
||||
glCullFace GL_BACK
|
||||
unless (debugOn Remove_LOS cfig) $ do
|
||||
glUseProgram (pdata ^. ceilingStencilShader . shaderUINT)
|
||||
-- glProgramUniform3f
|
||||
-- (pdata ^. ceilingStencilShader . shaderUINT)
|
||||
-- 0
|
||||
-- vfx
|
||||
-- vfy
|
||||
-- 20
|
||||
-- glProgramUniform1f
|
||||
-- (pdata ^. ceilingStencilShader . shaderUINT)
|
||||
-- 1
|
||||
-- 1000 -- this should be the furthest on screen distance from the viewpoint
|
||||
glBindVertexArray $ pdata ^. ceilingStencilShader . shaderVAO . vaoName
|
||||
-- glBindVertexArray $ pdata ^. ceilingStencilShader . shaderVAO . vaoName
|
||||
glBindVertexArray $ pdata ^. dummyVAO . vaoName
|
||||
glEnable GL_DEPTH_CLAMP
|
||||
glDrawArrays
|
||||
(_unPrimitiveMode $ pdata ^. ceilingStencilShader . shaderPrimitive)
|
||||
0
|
||||
(fromIntegral trueNWalls)
|
||||
(fromIntegral (trueNWalls * 6))
|
||||
glDisable GL_DEPTH_CLAMP
|
||||
glStencilMask 127 -- to alter last seven bits
|
||||
glStencilOp GL_KEEP GL_KEEP GL_KEEP
|
||||
|
||||
@@ -88,8 +88,10 @@ preloadRender = do
|
||||
makeShaderUsingVAO "lighting/cap" [vert, geom] pmTriangles shPosVAO
|
||||
lightingLineShadowShad <-
|
||||
makeShaderUsingVAO "lighting/lineShadow" [vert, geom] pmLinesAdjacency shedgevao
|
||||
ceilingstencilshader <-
|
||||
makeShaderUsingVBO "ceiling/stencil" [vert, geom] (toFloatVAs [4]) pmPoints wallvbo
|
||||
|
||||
ceilingstencilshader <- makeShaderUsingVAO "ceiling/stencil" [vert] pmTriangles
|
||||
(VAO dummyvao)
|
||||
-- makeShaderUsingVBO "ceiling/stencil" [vert, geom] (toFloatVAs [4]) pmPoints wallvbo
|
||||
|
||||
putStrLn "Setup 2D shaders"
|
||||
bslist <- makeShaderVBO "dualTwoD/basic" [vert, frag] (toFloatVAs [3, 4]) pmTriangles
|
||||
|
||||
Reference in New Issue
Block a user