Search Unity

  1. Unity Asset Manager is now available in public beta. Try it out now and join the conversation here in the forums.
    Dismiss Notice
  2. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  3. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Bug DXR Bugs -- Generally and for manual RTAS code

Discussion in '2023.1 Beta' started by Klani, Apr 30, 2023.

  1. Klani

    Klani

    Joined:
    Nov 4, 2017
    Posts:
    1
    Currently for: 2023.1.0b14 but these things were seen with at least b13/12/11 as well

    This is my first forum post
    ..not sure whether I should create a bug report for each of those but I'll just summarize them all here

    All materials used in testing are using the "HDRP/Lit" shader

    1.
    For the "Ray Tracing Settings" override whether I am using "CullInstances()" with "Manual" or instead directly use "Automatic" I am not seeing shadows for the existing gameObjects of the scene

    2.
    There seems to be an unintentional fallback mode for at least SSAO when having the "Ray Tracing" checkbox disabled and then further disabling the volume override
    ..or it's the other way around and fallbacks instead are missing for other things like SSGI, SSR and especially SSS
    => Right now objects not within the RTAS don't cast shadows at all and a fallback for that would be nice for mixed use cases which I do have

    3.
    Which leads to the next point
    => Objects not within the RTAS (rendered with "RenderMeshXXX" functions, which thus don't have any (fallback) shadows) are still affected by (fallback?) SSAO and SSGI

    4.
    Having the "Ray Tracing Settings" override enabled and then toggling the "Path Tracing" override can cause a massive constant FPS drop while it's disabled
    ..entering/leaving play mode fixes/resets this behavior respectively
    This is easily reproducable but doesn't always happen
    ..this could further be amplified by having underlying manual RTAS camera assigments that run for both the edit and play mode but I have no accurate data on that as it happens for both cases(not running the assignments at all) either way

    Next up some points about using "manual" RTAS, also together with "AddInstances()"

    1.
    Objects added through "AddInstances" only work with the "Path Tracing" override enabled
    => else they only exclusively show up in either pure reflections or via indirect shadowy artifacts
    Further issues could exist but aren't testable as the objects don't directly show up afterall anyway
    .."Path Tracing" itself seems to work fine generally
    RayTracing -- Exclusive reflections and indirect imprints.png

    2.
    The "RayTracingMeshInstanceConfig" has a broken or undefined default constructor
    This here works
    rtInstanceConfig = new(null, 0, null);
    rtInstanceConfig.mesh = mesh;

    This here does not work
    rtInstanceConfig = new();
    rtInstanceConfig.mesh = mesh;

    I want to use a single global variable and not need to re-create the struct per frame => for loop rotation which is the current workaround with the null passes

    3.
    For both "RayTracingInstanceCullingConfig" and "RayTracingMeshInstanceConfig" the "subMeshFlagsConfig" and "subMeshFlags" respectively have a potential issue with "RayTracingSubMeshFlags.ClosestHitOnly"
    => Using this flag with ex: "tree leaves" that use alpha clipping it does work like expected, however the shader still gets correctly applied in reflections of the tree thus alpha clipping is being applied in reflections which it shouldn't I'd expect since the direct representation of course doesn't apply alpha clipping
    ..so if that is unintentional the flag should probably be checked on not only for reflections but where ever else it is(should be) used in
    PathTracing -- Original vs Reflection -- RayTracingSubMeshFlags.ClosestHitOnly.png
     
    Last edited: Apr 30, 2023
    newguy123 likes this.
  2. TomTheMan59

    TomTheMan59

    Joined:
    Mar 8, 2021
    Posts:
    354
    Please create a bug report! If you look throughout the forums the devs always say to do it. You can always post the IN number once you get it.
     
    newguy123 likes this.
  3. newguy123

    newguy123

    Joined:
    Aug 22, 2018
    Posts:
    1,248
    Could you perhaps comment on any of the OP fascinating findings/questions please @INedelcu ?
     
  4. INedelcu

    INedelcu

    Unity Technologies

    Joined:
    Jul 14, 2015
    Posts:
    169
    TomTheMan59 likes this.