Search Unity

[Solved] Scene not rendering (HDRP)

Discussion in 'Unity Build Automation' started by MafiaMoe, Jul 10, 2019.

  1. MafiaMoe

    MafiaMoe

    Joined:
    Mar 24, 2013
    Posts:
    27
    I am having an issue running Cloud Build for our game using Unity version 2019.1.9. Of the few builds that have succeeded, this warning is thrown in the build log about 1000 times and nothing renders when launching the built game:

    55: [Unity] WARNING: Shader Unsupported: 'Hidden/HDRP/Deferred' - Pass '' has no vertex shader
    56: [Unity] WARNING: Shader Unsupported: 'Hidden/HDRP/Deferred' - Setting to default shader.
    ...
    2312: [Unity] WARNING: Shader Unsupported: 'Hidden/VFX/System 1/Quad Output' - All passes removed
    2313: [Unity] WARNING: Shader Unsupported: 'Hidden/VFX/System 1/Quad Output' - Setting to default shader.

    In the process of trying to fix this issue, I have:
    • Manually started 'Clean Builds'.
    • Updated SRP to the latest version.
    • Re-installed Unity and re-imported our game (via Collaborate) to a separate computer to see if there was any inherent build issues.
    • Searched around the internet for solutions to this problem...
    Thank you for your time and any help!
     
  2. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    I have seen users with this bug as well, it just started happening, very weird.
     
  3. MafiaMoe

    MafiaMoe

    Joined:
    Mar 24, 2013
    Posts:
    27
    Good to know, perhaps it will just correct itself when a fix/update happens on Cloud Build. I should also add that when I play the game from Cloud Build, I can hear ambient sounds playing and the screen-space UI overlay is displayed. It seems like the game is building fine outside of the slight rendering issue.
     
  4. MafiaMoe

    MafiaMoe

    Joined:
    Mar 24, 2013
    Posts:
    27
    I just created a clean HDRP project and it too shows the same errors with cloud build, however the builds render the SampleScene correctly.

    Now my biggest lead on what is going on is an error being thrown when running the game generated using Cloud Build:
    • UnityEngine.Experimental.Rendering.HDPipeline.HDRenderPipeline.DownsampleDepthForLowResTransparency (UnityEngine.Experimental.Rendering.HDPipeline.HDCamera hdCamera, UnityEngine.Rendering.CommandBuffer cmd) (at /opt/workspace/workspace/tau-ceti-labs.m3.default-windows-desktop-64-bit/Library/PackageCache/com.unity.render-pipelines.high-definition@5.16.1-preview/Runtime/RenderPipeline/HDRenderPipeline.cs:3232)
    • UnityEngine.Experimental.Rendering.HDPipeline.HDRenderPipeline.ExecuteRenderRequest (UnityEngine.Experimental.Rendering.HDPipeline.HDRenderPipeline+RenderRequest renderRequest, UnityEngine.Rendering.ScriptableRenderContext renderContext, UnityEngine.Rendering.CommandBuffer cmd) (at /opt/workspace/workspace/tau-ceti-labs.m3.default-windows-desktop-64-bit/Library/PackageCache/com.unity.render-pipelines.high-definition@5.16.1-preview/Runtime/RenderPipeline/HDRenderPipeline.cs:1915)
    • UnityEngine.Experimental.Rendering.HDPipeline.HDRenderPipeline.Render (UnityEngine.Rendering.ScriptableRenderContext renderContext, UnityEngine.Camera[] cameras) (at /opt/workspace/workspace/tau-ceti-labs.m3.default-windows-desktop-64-bit/Library/PackageCache/com.unity.render-pipelines.high-definition@5.16.1-preview/Runtime/RenderPipeline/HDRenderPipeline.cs:1423)
    • UnityEngine.Rendering.RenderPipeline.InternalRender (UnityEngine.Rendering.ScriptableRenderContext context, UnityEngine.Camera[] cameras) (at <5d0dc41e74a54b3c85c009de50874bb2>:0)
    • UnityEngine.Rendering.RenderPipelineManager.DoRenderLoop_Internal (UnityEngine.Rendering.RenderPipelineAsset pipe, UnityEngine.Camera[] cameras, System.IntPtr loopPtr) (at <5d0dc41e74a54b3c85c009de50874bb2>:0)
     
  5. MafiaMoe

    MafiaMoe

    Joined:
    Mar 24, 2013
    Posts:
    27
    Going into the HDRP Asset and disabling 'Low Res Transparency' fixed the issue.

    In the 'HDRenderPipeline.cs' file, for some reason the variable 'm_DownsampleDepthMaterial' is not being set, which causes the rendering to run into a null exception and fail. Someone smarter than me (and with access to Cloud Build code) can probably figure out why this happens on Cloud Build and not when building locally.

    I guess I'll go file a bug report...
     
  6. victorw

    victorw

    Joined:
    Sep 14, 2016
    Posts:
    459
    In general, if you're trying to replicate issues in UCB locally you should try the following steps:
    • Create a fresh clone of your project
    • Do NOT open the project in the Unity Editor
    • Run a batch mode build of your project
    UCB has relatively little complex code around how the builds take place, so most of the time issues like this are coming from one of these three steps. If it's failing due to step 1, it's because you didn't check in everything you needed. If you skip step 2 then the Editor will populate your
    Library/
    folder with cached data which the build may depend on and which may NOT be correctly created during a batch mode build. Step 3 is required to complete step 2 and also sometimes introduces its own range of bugs, where using the visual client works but the CLI fails.

    If you are able to replicate locally using these steps (and you normally will be able to, especially if you're running on Mac) then you should submit a bug report and note that it replicates in this fashion since that will help us to prioritize the fix. If you're not able to replicate locally using these steps then submitting a bug may still be worthwhile but submitting a support ticket may give you a quicker resolution.
     
    ollieblanks likes this.