Share wall points in buffer, part 1
This commit is contained in:
+6
-4
@@ -69,8 +69,8 @@ createLightMap pdata resDiv wallPoints lightPoints fpics scPol = do
|
||||
viewport $= (vppos, vsize)
|
||||
textureBinding Texture2D $= Just (snd $ _fboLighting pdata)
|
||||
-- store wall and light positions into buffer
|
||||
nWallLights <- F.foldM (pokeShader $ _lightingWallShader pdata) (map Render22 wallPoints)
|
||||
bindShaderBuffers [_lightingWallShader pdata] [nWallLights]
|
||||
-- nWallLights <- F.foldM (pokeShader $ _lightingWallShader pdata) (map Render22 wallPoints)
|
||||
-- bindShaderBuffers [_lightingWallShader pdata] [nWallLights]
|
||||
nWalls <- F.foldM (pokeShader $ _lightingOccludeShader pdata) (map Render22 wallPoints)
|
||||
bindShaderBuffers [_lightingOccludeShader pdata] [nWalls]
|
||||
-- store foreground silhouette geometry into buffer
|
||||
@@ -89,7 +89,8 @@ createLightMap pdata resDiv wallPoints lightPoints fpics scPol = do
|
||||
cullFace $= Just Back
|
||||
-- draw walls from your point of view in order to set z buffer
|
||||
currentProgram $= Just (_shaderProgram $ _lightingWallShader pdata)
|
||||
drawShader (_lightingWallShader pdata) nWallLights
|
||||
--drawShader (_lightingWallShader pdata) nWallLights
|
||||
drawShader (_lightingWallShader pdata) nWalls
|
||||
--colorMask $= Color4 Disabled Disabled Disabled Disabled
|
||||
--currentProgram $= Just (_shaderProgram $ _lightingOccludeShader pdata)
|
||||
--uniform (head $ _shaderCustomUnis $ _lightingOccludeShader pdata)
|
||||
@@ -151,7 +152,8 @@ createLightMap pdata resDiv wallPoints lightPoints fpics scPol = do
|
||||
$= Vector3 x y z
|
||||
uniform (_shaderCustomUnis (_lightingWallShader pdata) !! 1)
|
||||
$= Vector2 r lum
|
||||
drawShader (_lightingWallShader pdata) nWallLights
|
||||
--drawShader (_lightingWallShader pdata) nWallLights
|
||||
drawShader (_lightingWallShader pdata) nWalls
|
||||
cullFace $= Nothing
|
||||
stencilTest $= Disabled
|
||||
blend $= Disabled
|
||||
|
||||
Reference in New Issue
Block a user