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

Render UI canvas to second display (AirPlay)

Discussion in 'UGUI & TextMesh Pro' started by cyliax, Apr 10, 2015.

  1. cyliax

    cyliax

    Joined:
    Feb 25, 2014
    Posts:
    18
    Hi folks,

    I have a big problem rendering my HUD build with the new UI System to a second screen. There is no problem to assign multiple 3D cameras to those two displays or select just one of them. But with the canvas, you have to assign one specific camera to it. I'm not able to map this camera to both screens. Is there anything I missed?

    Thanks in advance

    Carsten
     
  2. SimonDarksideJ

    SimonDarksideJ

    Joined:
    Jul 3, 2012
    Posts:
    1,683
    As far as I'm aware, the UI is limited to a single camera/screen at present.
    However if you use a Screen Space - Camera camvas and render it to a texture instead of output, then you could then display that UI on multiple screens. Although, not sure how the input system would handle it. Likely this would only work for non-interactive UI.
     
  3. cyliax

    cyliax

    Joined:
    Feb 25, 2014
    Posts:
    18
    This is pretty sad, cause I was removing all those NGUI scripts and behaviors to start with the new UI system. Now I have to go back to NGUI, because this is rendered as normal 3D visuals and works with multiple screens. Non-interactive UI is not an option, at least on the iPad I wanna have my events fired, when I'm touching UI components. If somebody else knows a way to get rid of that restriction, please let me know. I would appreciate that.
     
  4. SimonDarksideJ

    SimonDarksideJ

    Joined:
    Jul 3, 2012
    Posts:
    1,683
    The only other possibility it to use multiple World Space Canvases which effectively are individual 3D elements, which you can draw anywhere within your 3D scene. So if you are rendering to multiple cameras, that should work. Same as with any other 3D element.