Spiky, moving shadows on vertical surfaces.

Support for running, installing or compiling OpenMW

Before you submit a bug report for the first time, please read: Bug reporting guidelines
User avatar
Capostrophic
Posts: 794
Joined: 22 Feb 2016, 20:32

Re: Spiky, moving shadows on vertical surfaces.

Post by Capostrophic »

IIRC there's a maximum of 8 texture units available currently, it can be pushed with soecifically tailored assets.
1Mac
Posts: 62
Joined: 20 Feb 2019, 19:50

Re: Spiky, moving shadows on vertical surfaces.

Post by 1Mac »

raevol's settings helped the issue tremendously! Changing split point uniform logarithmic ratio to 1 seemed to help even more, though I'm not sure. Reducing shadow map resolution to 2048 doesn't make the problem worse and is much better for performance in my case (other settings changes don't seem to affect performance very much).

It's not a perfect solution, alas, as the moving spikes return eventually. AON, I'd like to figure out how to get you an API trace, but it will have to wait until after Easter. Meanwhile, I noticed that you were concerned raevol's normal offset distance setting was very high because it would create the illusion things were floating. For what it's worth, I was noticing that effect in some places even with the default setting, for example the mud crabs on the hills around Seyda Neen. I'm not sure if that was a shadow illusion or an actual rendering error, though. (Or possibly even consistent with vanilla Morrowind, for all I know.)
User avatar
AnyOldName3
Posts: 2672
Joined: 26 Nov 2015, 03:25

Re: Spiky, moving shadows on vertical surfaces.

Post by AnyOldName3 »

Animated stuff is fairly likely to be actually floating just because it looks better to have things floating than clipping into the ground, and having inverse kinematics systems to make legs always touch the ground properly wasn't a thing when Morrowind released. I've also noticed some statics floating above the ground, too.
User avatar
raevol
Posts: 3093
Joined: 07 Aug 2011, 01:12
Location: Caldera

Re: Spiky, moving shadows on vertical surfaces.

Post by raevol »

I was able to put the normal offset distance back to I think zero? possibly one? and everything looked fine. My value of 8 was definitely overkill. There were some other settings I fiddled with, but only the resolution and number of maps effected the original issue. I'll try to remember to post my full current settings when I get home, I was too excited about the shadow map issue and forgot.
User avatar
AnyOldName3
Posts: 2672
Joined: 26 Nov 2015, 03:25

Re: Spiky, moving shadows on vertical surfaces.

Post by AnyOldName3 »

I'm somewhat surprised that increasing resolution would make the issue go away (I'd just have expected the gaps between stripes to shrink) but increasing the number of shadow maps is likely helping by decreasing the depth range each one has.
User avatar
raevol
Posts: 3093
Joined: 07 Aug 2011, 01:12
Location: Caldera

Re: Spiky, moving shadows on vertical surfaces.

Post by raevol »

Code: Select all

[Shadows]
enable shadows = true
number of shadow maps = 1
allow shadow map overlap = true
split point uniform logarithmic ratio = 1.0
split point bias = 0.0
enable debug hud = false
enable debug overlay = false
compute tight scene bounds = true
shadow map resolution = 1024
minimum lispsm near far ratio = 0.25
polygon offset factor = 1.0
polygon offset units = 1.0
normal offset distance = 1.0
use front face culling = true
actor shadows = true
player shadows = true
terrain shadows = true
object shadows = true
enable indoor shadows = false
produces:

Image

while

Code: Select all

[Shadows]
enable shadows = true
number of shadow maps = 4
allow shadow map overlap = true
split point uniform logarithmic ratio = 1.0
split point bias = 0.0
enable debug hud = false
enable debug overlay = false
compute tight scene bounds = true
shadow map resolution = 4096
minimum lispsm near far ratio = 0.25
polygon offset factor = 1.0
polygon offset units = 1.0
normal offset distance = 1.0
use front face culling = true
actor shadows = true
player shadows = true
terrain shadows = true
object shadows = true
enable indoor shadows = false
produces:

Image

for me. The only difference between the two is the number of shadow maps and the shadow resolution.

Keeping the resolution at 1024 and upping the maps to 4 makes a small improvement, but it still looks bad.

Keeping the number of maps at 1 and upping the resolution to 4096 improves the quality quite a bit, but the edges "dance" a lot.

At 4 and 4096 the edges still dance, but it's a small enough thing that I can ignore it as I am running around. If I sit still and look at it, the motion is very apparent though. It looks like it needs antialiasing? My ignorance will be showing here.
User avatar
AnyOldName3
Posts: 2672
Joined: 26 Nov 2015, 03:25

Re: Spiky, moving shadows on vertical surfaces.

Post by AnyOldName3 »

Neither of those screenshots how the original issue 1Mac was complaining about. Look at the tops of the buildings in this screenshot.

https://drive.google.com/file/d/1iHrMuh ... SsllR/view

You're just reporting the standard problem of not having enough shadow map texels to cover the things you're tryign to shadow.
User avatar
raevol
Posts: 3093
Joined: 07 Aug 2011, 01:12
Location: Caldera

Re: Spiky, moving shadows on vertical surfaces.

Post by raevol »

AnyOldName3 wrote: 11 Apr 2019, 21:46 You're just reporting the standard problem of not having enough shadow map texels to cover the things you're tryign to shadow.
Got it, makes sense.
BaronPampa
Posts: 25
Joined: 04 Aug 2017, 12:50

Re: Spiky, moving shadows on vertical surfaces.

Post by BaronPampa »

I've messed with settings and made some screenshots.

Default settings: http://oi67.tinypic.com/io0nyc.jpg - notice the vertical lights in the upper parts of the buildings. They aren't as big as 1Mac's, but they move horizontally very fast, even if the player is standing still.

Now, with:
enable shadows = true
number of shadow maps = 4
compute tight scene bounds = true
shadow map resolution = 4096
normal offset distance = 8.0
http://oi68.tinypic.com/1zbqlbm.jpg

The problem is greatly reduced, but it still occurs. In the screen above those horizontal lines of vertical lights/shadows/lights/shadows appear on the steps of the stairs, but I don't think it's visible on a static screenshot. A video would show it more clearly. As far as I've checked, each of the settings I've listed is needed to reduce the problem, and other settings don't seem to impact it.
kenny26
Posts: 22
Joined: 17 Feb 2021, 03:06

Re: Spiky, moving shadows on vertical surfaces.

Post by kenny26 »

raevol wrote: 10 Apr 2019, 18:46 I just messed with my settings because I was having this issue too. This seems to fix things, though I'll need to play more to see the full impact:

Code: Select all

[Shadows]
enable shadows = true
number of shadow maps = 4
allow shadow map overlap = true
split point uniform logarithmic ratio = 0.5
split point bias = 0.0
enable debug hud = false
enable debug overlay = false
compute tight scene bounds = true
shadow map resolution = 4096
minimum lispsm near far ratio = 0.25
polygon offset factor = 1.1
polygon offset units = 4.0
normal offset distance = 8.0
use front face culling = true
actor shadows = true
player shadows = false
terrain shadows = true
object shadows = true
enable indoor shadows = false
Also, @AnyOldName3 if any of this looks dumb let me know and I will test your suggestions...
Apologies for the thread necromancy, but I wanted to give my thanks to the people in this topic. I was having the exact same issue OP describes: flickering shadows on vertical and slanted surfaces. I simply googled these symptoms and came to this topic, found the above reply and copy-pasted those into my settings.cfg and now shadows look normal. So thank you.
Post Reply