Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

RenderPipelineManager.endFrameRendering Question

Discussion in 'Universal Render Pipeline' started by falkenbrew, Feb 13, 2021.

  1. falkenbrew

    falkenbrew

    Joined:
    Apr 21, 2020
    Posts:
    146
    I was expecting endFrameRendering to be called when Unity has finished rendering everything. But the event is never fired. I've tried adding this code in the constructor and in the awake function of the monobehavior (attached to a camera that fires it's own onpostrender without a hitch). I have not messed around with the render pipeline so what could I be missing?

    RenderPipelineManager.endFrameRendering += RenderPipelineManager_endFrameRendering;

    I am using Unity 2019.4.5f1

    I also tried
    RenderPipelineManager.endCameraRendering += RenderPipelineManager_endCameraRendering;
    with the same (no) effect.

    edit: I think I might have found the reason? URP is not in fact the default render pipeline and renderpipelinemanager only works with urp or hdrp? does the default pipeline not offer this feature?

    edit: is this the same what happened to me with inputmanager after working with the default one for months I find out it should really have been replaced by a new one ages ago and I put all my work in to dated tech? I'm reading URP is more efficient etc... wtf. How on earth should one know this if you don't look for the info directly. Damn.

    edit: can I just update to URP or will that destroy all my shader work so far. Very confused right now.
     
    Last edited: Feb 13, 2021
  2. paddan

    paddan

    Unity Technologies

    Joined:
    Jun 19, 2019
    Posts:
    13
    Hello,
    EndFrameRendering callback is called by Universal and High Defenition pipelines in the Render function. When you are using Unity without a Scriptable Render Pipeline the Render Pipeline Manager is not used.

    Here is some documentation about EndFrameRendering callback:
    https://docs.unity3d.com/ScriptReference/Rendering.RenderPipeline.EndFrameRendering.html

    Here you can read about what the Scriptable Render Pipeline is:
    https://docs.unity3d.com/Manual/scriptable-render-pipeline-introduction.html

    Here you can find upgrade guides:
    https://docs.unity3d.com/Packages/c...versal@7.0/manual/upgrading-your-shaders.html
    https://docs.unity3d.com/Packages/c...ines.universal@8.2/manual/upgrade-guides.html

    Hope this helps :)
     
  3. falkenbrew

    falkenbrew

    Joined:
    Apr 21, 2020
    Posts:
    146
    Thank you for confirming paddan! I've decided that switching the render pipeline is probably too much for now as I am going for release. I will probably check it out in the future and hope it can resolve my current issues.