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. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice

[Released] SceneView Highlight and Pickup

Discussion in 'Assets and Asset Store' started by lokinwai, Feb 10, 2018.

  1. lokinwai

    lokinwai

    Joined:
    Feb 11, 2015
    Posts:
    174
    Asset Store

    Description:
    • Highlight objects when hover in hierarchy and scene view
      • 3D renderers
      • 2D sprites
      • UI elements (RectTransform)
    • Highlight selected 2D sprites (Unity does not highlight sprites)
    • Switch highlight object overlapped in scene view
    • Select overlapped object last highlighted


    outline1.jpg outline2.jpg outline3.jpg
     
    Last edited: Mar 16, 2018
    Lars-Steenhoff likes this.
  2. lokinwai

    lokinwai

    Joined:
    Feb 11, 2015
    Posts:
    174
    Lars-Steenhoff likes this.
  3. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,474
    Can you update it for 2019.3 beta?
    I'm using Universal Render Pipline and the outlines don't show up
     
  4. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,474
    Its working in 20.20
     
    Last edited: Oct 7, 2019
  5. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,474
    I hope it will be updated for URP
     
  6. aquariusgx

    aquariusgx

    Joined:
    Jan 4, 2017
    Posts:
    2
    The reason it doesn't work is that OnRenderImage is not supported in URP.

    I found a simple way to show the outlines again:

    Add these codes in SceneViewOutline.cs:

    private void OnEnable()
    {
    RenderPipelineManager.endCameraRendering += BlitOutline;
    }

    private void OnDisable()
    {
    RenderPipelineManager.endCameraRendering -= BlitOutline;
    }

    private void BlitOutline(ScriptableRenderContext context, Camera camera)
    {
    RenderTexture source = RenderTexture.active;
    OnRenderImage(source, camera.targetTexture); // call the function manually
    }

    --------

    I hope it will be helpful for you.
     
    Lars-Steenhoff likes this.
  7. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,474
    @aquariusgx

    Thank you very much!

    I was very much missing this tool and with that fix its perfect again!
     
    Last edited: Jan 6, 2021
  8. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,474
    In 2022 I have a new error in URP

    Is anyone able to fix this ?
     
  9. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,474
    Code (CSharp):
    1.     private void BlitOutline(ScriptableRenderContext context, Camera camera)
    2.         {
    3.             var source = RenderTexture.active;
    4.             if(source == null) return;
    5.             var tempRT = RenderTexture.GetTemporary(source.descriptor);
    6.             OnRenderImage(source, tempRT); // call the function manually
    7.             Graphics.Blit(tempRT, camera.targetTexture);
    8.             RenderTexture.ReleaseTemporary(tempRT);
    9.         }

    This should work