Dynamic shadows artifacts

It would be great to use normal offset shadows to remove/reduce acne while not introducing peter panning. Although I’m guessing the reason this hasn’t been done is that it requires actual vertex normals stored and sent to the shader (i.e. g-buffer room), as deriving surface normals with partial derivatives using ddx/ddy result in the problem of edge handling not being possible.

Is Epic working on this or are they still ignoring it? I have the exact same problems in my project and it’s so immersion breaking it’s horrible… :frowning:

I can’t even publish screenshots of the environment because of this… :frowning: :frowning: :frowning:

Bump, having this issue also.

I haven’t noticed any work on github regarding the shadows in ages.

Yes that’s how we all feel…

Goodluck :slight_smile:

Maybe this mess will sort itself out if we ignore it long enough? :rolleyes:

oh, i was wondering what was causing this.

+1 for please fix

I got to put my hands in several games not developed with UE and checked if this happens or not… Im still playing them… not doing my job as supposed to… but, up to now didn’t find the issues in any of them… lol Im losing money here… -_-

I’ve tested in Unity and similar artifacts can be seen with low bias settings, I’m not an engine programmer I’m not sure if this is some sort of a limitation somewhere as to how light and shadows affects surfaces in these engines.

Like I posted earlier in the thread:

And how the hell are we supposed to do that? I am not an engine guru, I am a small indie dev who now can’t publish screenshots of his game project because the shadow artifacts make it look like my game is severely broken.

Seriously, what is Epic doing? Are they too busy counting money from the PUBG influx?

After 11 pages without single reply, coming into the conclusion that this thread doesn’t show up for epic staff. Might have to do with their account or forum settings. :stuck_out_tongue:

Maybe we should make a new one every day until someone accidently clicks on one?

It is my conclusion that on several games, artists are having the issue and are hidding them with props, because it is clear they make an effort to avoid scenes with those angles at terrain, or they change the illumination, so the light source comes from different directions. I took a look on games quite old, but open world like Lineage2 (UE3), Aion (CryEngine), Blande n Soul(UE3), Far Cry (CryEngine and a modified one for later versions).

I just think, UE could be “the engine” to look for and get rid of this ridiculous artifacts, granting that Env.Artists get less headache trying to workaround with extra work when it would be greatly simplified by just not existing the issue.

Im sure they see the thread but they can’t do much for this right now. It needs a rethink on several engine aspects, involving a lot of people, and a lot of work hours… no budget for it.

Surely they’d be able to post that they don’t have a solution instead of ignoring the topic?

We can send private messages for them, they will not ignore a lot of messages with same subject, we just need to agree the subject, content, and the people to address. What you guys think?

relax, it’s only 4 pages if you’ve set the forum to show 40 posts per page :rolleyes:

The fix is so obvious that I have no idea what’s going on at Epic. Clearly the normals are being calculated using the camera vector when they should be calculated using the perspective matrix.

In simple terms, if your camera is orthographic mode facing forwards (direction vector [1,0,0]), then every single pixel also represents a direction of [1,0,0].
But if you’re in perspective mode with the camera facing forwards, only the pixel in the center is facing [1,0,0]. Other pixels are facing different directions. Like if your V-FOV is 90, the center-right most pixel would be facing [1/root2,1/root2,0] and the center-left most pixel would be facing [1/root2,-1/root2,0]. That’s the correct vector to perform the calculations on.

For proof just change your view to ortho. The lighting is perfect because the pixel vector is always equal to the camera vector. When you switch to perspective it’s all ****ed up. How much more obvious can it be?