Partial fix to near plane clipping shadows
This commit is contained in:
@@ -3,7 +3,7 @@ layout (lines_adjacency) in;
|
|||||||
layout (triangle_strip, max_vertices = 4) out;
|
layout (triangle_strip, max_vertices = 4) out;
|
||||||
layout (std140, binding = 0) uniform TheMat { mat4 theMat; } ;
|
layout (std140, binding = 0) uniform TheMat { mat4 theMat; } ;
|
||||||
uniform vec3 lightPos;
|
uniform vec3 lightPos;
|
||||||
vec4 shift (vec4 p) { return (vec4 (p.xyz + (1000*(p.xyz-lightPos)), 1));}
|
vec4 shift (vec4 p) { return (vec4 (p.xyz + (100000*(p.xyz-lightPos)), 1));}
|
||||||
vec4 f (vec4 p) {return (theMat * p);}
|
vec4 f (vec4 p) {return (theMat * p);}
|
||||||
void main()
|
void main()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -173,7 +173,7 @@ startInventory = IM.fromList (zip [0..20]
|
|||||||
,remoteLauncher
|
,remoteLauncher
|
||||||
,remoteBomb
|
,remoteBomb
|
||||||
,grenade
|
,grenade
|
||||||
,spawnGun (lamp 20)
|
,spawnGun (lamp 5)
|
||||||
,lasGun
|
,lasGun
|
||||||
,flamer
|
,flamer
|
||||||
,poisonSprayer
|
,poisonSprayer
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ module Dodge.Item.Weapon.TriggerType
|
|||||||
import Dodge.Data
|
import Dodge.Data
|
||||||
import Dodge.SoundLogic
|
import Dodge.SoundLogic
|
||||||
import Dodge.Creature.Action (startReloadingWeapon)
|
import Dodge.Creature.Action (startReloadingWeapon)
|
||||||
import Dodge.WorldEvent (muzzleFlashAt,tempLightForAt)
|
import Dodge.WorldEvent (tempLightForAt)
|
||||||
import Dodge.WorldEvent.Cloud
|
import Dodge.WorldEvent.Cloud
|
||||||
import Dodge.RandomHelp
|
import Dodge.RandomHelp
|
||||||
import Dodge.Item.Attachment.Data
|
import Dodge.Item.Attachment.Data
|
||||||
|
|||||||
+3
-1
@@ -53,7 +53,9 @@ doDrawing pdata w = do
|
|||||||
-- poke wall points and colors
|
-- poke wall points and colors
|
||||||
nWalls <- poke224s (shadVBOptr $ _wallTextureShader pdata) wallPointsCol
|
nWalls <- poke224s (shadVBOptr $ _wallTextureShader pdata) wallPointsCol
|
||||||
nSils <- pokePoint3s (shadVBOptr $ _lightingLineShadowShader pdata)
|
nSils <- pokePoint3s (shadVBOptr $ _lightingLineShadowShader pdata)
|
||||||
$ youSil w ++ _foregroundEdgeVerx w
|
$
|
||||||
|
--youSil w ++
|
||||||
|
_foregroundEdgeVerx w
|
||||||
-- poke foreground geometry and floor
|
-- poke foreground geometry and floor
|
||||||
let addC (V2 xx yy) = V3 xx yy 0
|
let addC (V2 xx yy) = V3 xx yy 0
|
||||||
nsurfVs <- pokePoint3s (shadVBOptr $ _lightingSurfaceShader pdata)
|
nsurfVs <- pokePoint3s (shadVBOptr $ _lightingSurfaceShader pdata)
|
||||||
|
|||||||
@@ -72,14 +72,18 @@ createLightMap pdata lightPoints nWalls nSils nsurfVs = do
|
|||||||
currentProgram $= Just (_shaderProgram $ _lightingLineShadowShader pdata)
|
currentProgram $= Just (_shaderProgram $ _lightingLineShadowShader pdata)
|
||||||
uniform (head $ _shaderCustomUnis $ _lightingLineShadowShader pdata)
|
uniform (head $ _shaderCustomUnis $ _lightingLineShadowShader pdata)
|
||||||
$= Vector3 x y z
|
$= Vector3 x y z
|
||||||
|
depthClamp $= Enabled
|
||||||
drawShader (_lightingLineShadowShader pdata) nSils
|
drawShader (_lightingLineShadowShader pdata) nSils
|
||||||
|
depthClamp $= Disabled
|
||||||
|
|
||||||
cullFace $= Just Front
|
cullFace $= Just Front
|
||||||
stencilOp $= (OpKeep,OpKeep,OpDecr)
|
stencilOp $= (OpKeep,OpKeep,OpDecr)
|
||||||
currentProgram $= Just (_shaderProgram $ _lightingOccludeShader pdata)
|
currentProgram $= Just (_shaderProgram $ _lightingOccludeShader pdata)
|
||||||
drawShader (_lightingOccludeShader pdata) nWalls
|
drawShader (_lightingOccludeShader pdata) nWalls
|
||||||
currentProgram $= Just (_shaderProgram $ _lightingLineShadowShader pdata)
|
currentProgram $= Just (_shaderProgram $ _lightingLineShadowShader pdata)
|
||||||
|
depthClamp $= Enabled
|
||||||
drawShader (_lightingLineShadowShader pdata) nSils
|
drawShader (_lightingLineShadowShader pdata) nSils
|
||||||
|
depthClamp $= Disabled
|
||||||
|
|
||||||
-- draw geometry surfaces
|
-- draw geometry surfaces
|
||||||
cullFace $= Just Back
|
cullFace $= Just Back
|
||||||
|
|||||||
Reference in New Issue
Block a user