Skip to content

Shadow acne in VR with Vulkan mobile renderer #107337

@dsnopek

Description

@dsnopek

Tested versions

  • Reproducible in Godot 4.5-dev1 and later
  • Not reproducible in Godot 4.4.1

System information

Godot v4.5.dev5 - Pop!_OS 22.04 LTS on X11 - X11 display driver, Single-window, 3 monitors - Vulkan (Mobile) - dedicated NVIDIA GeForce RTX 4070 Ti - AMD Ryzen 9 7950X 16-Core Processor (32 threads)

Issue description

I have a version of the GDQuest TPS demo that runs in VR on the Meta Quest:

https://github.com/dsnopek/gdquest-tps-demo/tree/standalone-vr-slush

In the editor or when running the game as a flat non-VR application (even my branch can still run non-VR), there is no visible shadow acne. However, when run in VR on the Meta Quest 3, there is very noticeable shadow acne (and it's not even that distant - starts about 20m away?)

I've attempted adjusting the Shadow Bias and Shadow Normal Bias on the directional light, but I have to crank them up to very extreme values to get it to disappear, and at that point the shadows look pretty weird.

That said, I'm not super experienced with tweaking those values, as I've never needed to adjust them before - the default values have always been fine. So, it may be that there is a combination of values that would work, but I'm just not finding it. Are there other properties I should be looking at? The splits under Directional Shadows are all at their default values.

I've bisected the issue to PR #60178

Opening this issue just in case there is a bug here, but this may just be user error on my part. :-) Or the bug may somehow only affect VR (since I don't see it with the same project in non-VR), but it isn't obviously clear how that could happen from the code changes in the linked PR

Godot v4.4.1 Godot v4.5-dev1
Image Image
Image Image
Image Image

Sorry, the images aren't exactly lined up between the two versions - that's tricky to do in VR :-)

Steps to reproduce

Easiest would be to just use the MRP linked below!

Minimal reproduction project (MRP)

https://github.com/dsnopek/gdquest-tps-demo/tree/standalone-vr-slush

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    Bad

    Status

    Done

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions