Search Unity

6-screen setup for Driving Simulator

Discussion in 'Editor & General Support' started by unitarian413, Oct 2, 2013.

  1. unitarian413

    unitarian413

    Joined:
    Jul 27, 2012
    Posts:
    6
    Preparing to spec for an open source driving simulator project in Unity and would like your advice on how to deal with multiple screens.

    The intended screens are:
    In front of the cab, 3 large HD screens with panoramic view
    Inside the cab, 2 side and 1 rear view mirror emulated with small LCD screens in place of actual mirrors

    Like this:
    $MultiScreenUnityQuestion.png

    In the Windows Display Properties / Settings control panel, the screen layout may appear as something like this:
    $WindowsDisplayLayout.png

    Question 1: can Unity drive such a setup and how would it best be implemented ?
    Is it true that this would require Unity Pro but could be done with Render Textures and 4 cameras (1 for the main pano screens and 3 for the rear view mirrors) And have them display in non-overlapping viewports corresponding to the Windows Display Layout (ie Unity thinks of the whole output surface as 7584*1080 in the example above.
    I would need at least two graphics cards (since modern NVidia cards can drive 3-4 simultaneous displays max) - I might have 2 cards SLI'd for the 3 main HD screens and an extra one for the small LCD screens.
    Does this sound doable ? Is there a better performance way to do this ? I am trying to avoid going to multiple computers and having to deal with increased code complexity latency issues...


    Question 2: is there a way to deal with bezel correction, ie accounting for the physical space taken up by monitor bezels in the real world - whereas the Windows Displays layout obviously has no gap for purposes of rendering. Does anyone have experience with NVidia's nView bezel correction used in conjunction with Unity ? Will it "just work" :) ?

    To do it entirely correctly you'd really have to render the three large main screens as separate cameras (because the side screens are at an angle) So that means 6 full cameras - unless there are some Unity / NVidia tricks to compensate for bezel spacing and display angles ?



    Related question 3: if we were to use a curved screen and projectors instead for the front visuals, we'd need to model using a special camera or render effect to compensate for the cylindrical screen ? Also, related to bezel compensation, for projection there needs to be an overlap between cameras. Has anyone got experience or advice with that in Unity ? (Uneven projector illumination could likely be compensated with a render effect.)


    Thank you very much in advance for any tips ! I will post more information and probably questions as the project takes shape.

    Robert
     
    Last edited: Oct 4, 2013
  2. Reizla

    Reizla

    Joined:
    Nov 5, 2013
    Posts:
    136
    Looking into the bezel correction myself at the moment. I have 3 1080p HD screens and my bezel correction is 95px. When I start a project I'm working on and select 5950x1080 on the startup popup it allows me to select it. When the game actually has started it reverts back to 5760x1080.
    At first I figured it's because I'm using the personal edition of Unity, but when I launch commercially released games that DO use the professional edition of Unity, the bezel correction is ignored as well. This while in the options menus the 5950x1080 resolution is detected, but when it changes resolution it reverts back to 5760x1080 again.

    I'm not sure if this is a technical thing making it virtually impossible for Unity to use the bezel correction, or that the programmer has to add something to the code to actually use the bezel corrected resolution.