[Paraview] Mono and Stereo Rendering in the CAVE

David E DeMarle dave.demarle at kitware.com
Wed Mar 30 10:17:12 EDT 2016


Faiz,

Please try this and let us know what you run in to (ideally via a gitlab
merge request
<https://gitlab.kitware.com/paraview/paraview/blob/master/CONTRIBUTING.md>so
we can review, test and merge it easily)
* views_and_representations.xml
  add new option for the SetServerStereoType property called
"PassiveStereo"
* vtkPVServerOptions::AddMachineInformation
  add new key for eye choice, it should default to both if not specified
but accept "both" "left" or "right"
* vtkCaveSynchronizedRendererers
  - save the local choice of both, left or right into an ivar in
DefineDisplay as we do for DisplayOrigin, X and Y
  - add an accessor
* vtkPVRenderView.cxx
  where we set the serverstereo type and if stereotype is PassiveStereo
    downcast the synchronized renderer into a cavesynchronizedrenderer
    get the choice from the ivar
    set the renderwindow's stereo type to VTK_STEREO_LEFT or RIGHT
accordingly




David E DeMarle
Kitware, Inc.
R&D Engineer
21 Corporate Drive
Clifton Park, NY 12065-8662
Phone: 518-881-4909

On Wed, Mar 30, 2016 at 9:22 AM, Aashish Chaudhary <
aashish.chaudhary at kitware.com> wrote:

> On Tue, Mar 29, 2016 at 11:14 PM, Faiz Abidi <fabidi89 at vt.edu> wrote:
>
>> Aashish and David - the stereo is off (0) in the xorg.conf file. Paul (
>> CC'd) told me the reason for that - "If stereo is enabled that
>> interferes with the nvidia driver-level blending. This is a known issue
>> in linux. Nvidia has put it on their RFE list but it is not clear when
>> it will be done/fixed." So, I can't do what that link suggested. Although,
>> I still tried :) Outcome was weird. I tested on one wall, and what was
>> happening was that I saw left eye for a while, and then that faded, and
>> then I got the  right eye for a while, and then that faded, and again I got
>> a left eye. I got both eyes for a while as well, but then it again faded.
>> This process continued, clearly suggesting that there's some issue at the
>> driver level as Paul mentioned.
>>
>
> I might be a recent issue since in the past we tried this successfully.
>
>
>> Btw, Crystal eyes didn't work like before, and threw OpenGL errors.
>>
>
> This is strange that suggests me that something is still wrong in the
> setup (It's hard to tell unless I can access the system).
>
>
>> So, I tested the above using Anaglyph.
>>
>> Mark - I am using 1 process per DISPLAY (or projector you could say). We
>> have 8 projectors here each doing left, and right eye active stereo. So, I
>> would spawn 16 processes when I can get active stereo to work.
>>
>> I think at this point we have no choice but to look into editing the
>> source code of Paraview, and see if we can customize it for our CAVE.
>> This issue seems like unique.
>>
>
> Given all the errors problems you are having, Passive stereo would be the
> way to go. Passive stereo use-case is not unique per say though.
>
>
>> If you have any suggestions on where I should start looking into, that
>> would be great help!
>>
>> If anyone has any other ideas, I am happy to listen, and test it here.
>>
>> On Tue, Mar 29, 2016 at 2:44 PM, Stock, Mark <Mark.Stock at nrel.gov> wrote:
>>
>>> Faiz,
>>>
>>> Number 3 strikes me as odd: your graphics card and projectors should be
>>> capable of quad-buffered stereo, so you should only be using one MPI
>>> process per projector (i.e. 1 process per DISPLAY).
>>>
>>> I agree with previous posters in that you should try to get the
>>> synchronization with your glasses working first. How are the projectors
>>> synchronized (and what kinds of video cards are you using)?
>>>
>>> Mark
>>> (manages a 6-projector stereo setup at NREL and heavy user of ParaView)
>>>
>>> From: ParaView <paraview-bounces at paraview.org<mailto:
>>> paraview-bounces at paraview.org>> on behalf of Faiz Abidi <fabidi89 at vt.edu
>>> <mailto:fabidi89 at vt.edu>>
>>> Date: Saturday, March 26, 2016 at 12:19 AM
>>> To: Aashish Chaudhary <aashish.chaudhary at kitware.com<mailto:
>>> aashish.chaudhary at kitware.com>>
>>> Cc: Nicholas Polys <npolys at vt.edu<mailto:npolys at vt.edu>>, Lance
>>> Arsenault <lanceman at vt.edu<mailto:lanceman at vt.edu>>, "
>>> paraview at paraview.org<mailto:paraview at paraview.org>" <
>>> paraview at paraview.org<mailto:paraview at paraview.org>>
>>> Subject: Re: [Paraview] Mono and Stereo Rendering in the CAVE
>>>
>>> Hi Ashish,
>>>
>>> Thanks for your email. I was just now reading an old thread by you on a
>>> similar topic answering someone's query on a similar problem.
>>>
>>> 1. Yes, you are right. Two projectors per wall doing active stereo. So,
>>> in my PVX file, for doing only one half of the wall, I define Display=:0.0
>>> (left eye) and Display=:0.1 (right eye).
>>>
>>> 2. Yes, active stereo on each half of the wall.
>>>
>>> 3. Umm, no. Here's what's happening. Sorry if I didn't explain properly
>>> before. I use two processes to drive one half of the wall using mpi. I put
>>> on glasses and don't see anything with my right eye and see two images with
>>> my left. I tend to think this is where I am doing something wrong. I tried
>>> using 1 process to drive one half of the wall but same result.
>>>
>>> I just tried running glxgears in stereo and see an error - "Error:
>>> couldn't get an rgb double-buffered visual". :/ But I am running
>>> InstantReality projects in the same CAVE using stereo. This is a bit weird.
>>>
>>> Btw, I am using one powerful machine with 4 graphics card on it to drive
>>> the entire CAVE.
>>>
>>> Thanks again for your help! If you have any more ideas, I would be glad
>>> to hear.
>>>
>>> On Fri, Mar 25, 2016 at 11:45 PM, Aashish Chaudhary <
>>> aashish.chaudhary at kitware.com<mailto:aashish.chaudhary at kitware.com>>
>>> wrote:
>>> Hi Faiz,
>>>
>>> Few things:
>>>
>>> 1| You have two projectors per wall each covering half of the wall
>>> 2| You are trying to do active stereo on each half part of the wall
>>> 3| You put glasses on and you see both left and right eye on the half
>>> wall from the same projector
>>>
>>> If this is the case, it sounds like your active stereo is not working.
>>> Are you sure your driver is setup up correctly? Before you try to work on
>>> cluster setup, just try working on one projector for debugging purposes. If
>>> I were you I would do this:
>>>
>>> 1) Just use PVX to run on one projector (half wall)
>>> 2) Make sure your driver is setup correctly. If this is linux try
>>> running glxgears in stereo mode (
>>> http://manpages.ubuntu.com/manpages/karmic/man1/glxgears.1.html)
>>> 3) If 2) works then something is wrong with VTK/ParaView/Config
>>> somewhere.
>>> 4) Make sure that your active glasses are working meaning that they are
>>> syncing with the transmitter which is connected to the node
>>>
>>> Hope this helps.
>>>
>>>
>>>
>>>
>>> On Fri, Mar 25, 2016 at 7:28 PM, Faiz Abidi <fabidi89 at vt.edu<mailto:
>>> fabidi89 at vt.edu>> wrote:
>>> Alright, I updated the pvx file some, just the correct coordinates.
>>>
>>> <?xml version="1.0" ?>
>>> <pvx>
>>>     <Process Type="client" />
>>>     <Process Type="server">
>>>     <!-- Tiled wall in Kitware -->
>>>     <EyeSeparation Value="0.065"/>
>>>     <Machine Name="CTL"
>>>            Environment="DISPLAY=:0.4"
>>>            Geometry="2560x1600+0+0"
>>>            FullScreen="0"
>>>            ShowBorders="0"
>>>            LowerLeft="-1.524  -0.381  -1.524"
>>>            LowerRight="1.524    -0.381  -1.524"
>>>            UpperRight="1.524    1.524   -1.524"/>
>>>     <Machine Name="CTR"
>>>            Environment="DISPLAY=:0.5"
>>>            Geometry="2560x1600+0+0"
>>>            FullScreen="1"
>>>            ShowBorders="0"
>>>            LowerLeft="-1.524    -0.381  -1.524"
>>>            LowerRight="1.524    -0.381  -1.524"
>>>            UpperRight="1.524    1.524   -1.524"/>
>>>     <Machine Name="CBL"
>>>            Environment="DISPLAY=:0.6"
>>>            Geometry="2560x1600+0+0"
>>>            FullScreen="1"
>>>            ShowBorders="0"
>>>            LowerLeft="-1.524    -1.524  -1.524"
>>>            LowerRight="1.524    -1.524  -1.524"
>>>            UpperRight="1.524    0.381   -1.524"/>
>>>     <Machine Name="CBR"
>>>            Environment="DISPLAY=:0.7"
>>>            Geometry="2560x1600+0+0"
>>>            FullScreen="1"
>>>            ShowBorders="0"
>>>            LowerLeft="-1.524    -1.524  -1.524"
>>>            LowerRight="1.524    -1.524  -1.524"
>>>            UpperRight="1.524    0.381   -1.524"/>
>>>  </Process>
>>> </pvx>
>>>
>>> I tried attaching an image for reference but my email didn't go through.
>>> I can see the two images (left eye, right eye) with an eye separation of
>>> 0.065, but for some reason, I see both the images with stereo glasses on in
>>> each eye. Any more ideas?
>>>
>>> Lance (CC'd) had an idea that maybe, we can do passive stereo rendering
>>> as well. Would you recommend that given our projectors here do support
>>> active stereo? I am still trying though to make it work with active stereo.
>>> Is there someway to define the viewpoints in the pvx file? Also, is there
>>> some kind of a schema for this pvx file published somewhere?
>>>
>>> Thanks for all your help!
>>>
>>> On Fri, Mar 25, 2016 at 6:04 PM, Faiz Abidi <fabidi89 at vt.edu<mailto:
>>> fabidi89 at vt.edu>> wrote:
>>> Alright, I updated the pvx file some, just the correct coordinates.
>>>
>>> <?xml version="1.0" ?>
>>> <pvx>
>>>     <Process Type="client" />
>>>     <Process Type="server">
>>>     <!-- Tiled wall in Kitware -->
>>>     <EyeSeparation Value="0.065"/>
>>>     <Machine Name="CTL"
>>>            Environment="DISPLAY=:0.4"
>>>            Geometry="2560x1600+0+0"
>>>            FullScreen="0"
>>>            ShowBorders="0"
>>>            LowerLeft="-1.524  -0.381  -1.524"
>>>            LowerRight="1.524    -0.381  -1.524"
>>>            UpperRight="1.524    1.524   -1.524"/>
>>>     <Machine Name="CTR"
>>>            Environment="DISPLAY=:0.5"
>>>            Geometry="2560x1600+0+0"
>>>            FullScreen="1"
>>>            ShowBorders="0"
>>>            LowerLeft="-1.524    -0.381  -1.524"
>>>            LowerRight="1.524    -0.381  -1.524"
>>>            UpperRight="1.524    1.524   -1.524"/>
>>>     <Machine Name="CBL"
>>>            Environment="DISPLAY=:0.6"
>>>            Geometry="2560x1600+0+0"
>>>            FullScreen="1"
>>>            ShowBorders="0"
>>>            LowerLeft="-1.524    -1.524  -1.524"
>>>            LowerRight="1.524    -1.524  -1.524"
>>>            UpperRight="1.524    0.381   -1.524"/>
>>>     <Machine Name="CBR"
>>>            Environment="DISPLAY=:0.7"
>>>            Geometry="2560x1600+0+0"
>>>            FullScreen="1"
>>>            ShowBorders="0"
>>>            LowerLeft="-1.524    -1.524  -1.524"
>>>            LowerRight="1.524    -1.524  -1.524"
>>>            UpperRight="1.524    0.381   -1.524"/>
>>>  </Process>
>>> </pvx>
>>>
>>> Attached is one image for reference. I can clearly the two images with
>>> an eye separation of 0.065, but for some reason, I see both the images with
>>> stereo glasses on. Any more ideas?
>>>
>>> Lance (CC'd) had an idea that maybe, we can do passive stereo rendering
>>> as well. Would you recommend that given our projectors here do support
>>> active stereo? I am still trying though to make it work with active stereo.
>>> Is there someway to define the viewpoints in the pvx file? Also, is there
>>> some kind of a schema for this pvx file published somewhere?
>>>
>>> Thanks for all your help!
>>>
>>> On Fri, Mar 25, 2016 at 4:55 PM, Faiz Abidi <fabidi89 at vt.edu<mailto:
>>> fabidi89 at vt.edu>> wrote:
>>> I can see the error from both the client, and the server.
>>>
>>> Just tried RedBlue and I got a left eye but no right eye. When I changed
>>> the server's type to from Same as Client to CrystalEyes, I get the same
>>> errors in vtkOpenGLCamera.cxx.
>>>
>>> On Fri, Mar 25, 2016 at 4:34 PM, David E DeMarle <
>>> dave.demarle at kitware.com<mailto:dave.demarle at kitware.com>> wrote:
>>> Is that error message from the client or server process?
>>>
>>> Also, try just RedBlue at first and verify that you get two
>>> perspectives. Then in the properties panel, change the server's type to
>>> from Same as Client to CrystalEyes.
>>>
>>>
>>> David E DeMarle
>>> Kitware, Inc.
>>> R&D Engineer
>>> 21 Corporate Drive
>>> Clifton Park, NY 12065-8662
>>> Phone: 518-881-4909<tel:518-881-4909>
>>>
>>> On Fri, Mar 25, 2016 at 4:27 PM, Faiz Abidi <fabidi89 at vt.edu<mailto:
>>> fabidi89 at vt.edu>> wrote:
>>> I do enable --stereo on the client side when connecting to the server,
>>> but when I give --stereo-type="Crystal Eyes", I get OpenGL errors in
>>> vtkOpenGLCamera.cxx. I don't get that when I don't specify the stereo type.
>>> I *think* that's because "Crystal Eyes" ain't supported by the projectors
>>> we have here (not sure).
>>>
>>> Yes, I checked the stereo type in the properties panel. It sets it to
>>> Anaglyph, and Server Stereo Type = Same as Client.
>>>
>>> On Fri, Mar 25, 2016 at 4:07 PM, David E DeMarle <
>>> dave.demarle at kitware.com<mailto:dave.demarle at kitware.com>> wrote:
>>>
>>> Have you started the client that connects to the pvserver with --stereo
>>> and verified the stereo type for client and server jobs the view section of
>>> the properties panel?
>>>
>>> On Mar 25, 2016 3:43 PM, "Faiz Abidi" <fabidi89 at vt.edu<mailto:
>>> fabidi89 at vt.edu>> wrote:
>>> Hi guys,
>>>
>>> I have setup Paraview5 in a CAVE environment at Virginia Tech. I got
>>> mono to work but I am stuck with Stereo rendering.
>>>
>>> Below is my stereo cave.pvx file.
>>>
>>> <?xml version="1.0" ?>
>>> <pvx>
>>>     <Process Type="client" />
>>>     <Process Type="server">
>>>     <!-- Tiled wall in Kitware -->
>>>     <EyeSeparation Value="0.065"/>
>>>     <Machine Name="CTL"
>>>            Environment="DISPLAY=:0.4"
>>>            Geometry="2560x1600+0+0"
>>>            FullScreen="1"
>>>            ShowBorders="0"
>>>            LowerLeft="-1  -1  -1"
>>>            LowerRight="1    -1  -1"
>>>            UpperRight="1    1   -1"/>
>>>     <Machine Name="CTR"
>>>            Environment="DISPLAY=:0.5"
>>>            Geometry="2560x1600+0+0"
>>>            FullScreen="1"
>>>            ShowBorders="0"
>>>            LowerLeft="-1    -1  1"
>>>            LowerRight="1   -1  -1"
>>>            UpperRight="1   1   -1"/>
>>>     <Machine Name="CBL"
>>>            Environment="DISPLAY=:0.6"
>>>            Geometry="2560x1600+0+0"
>>>            FullScreen="1"
>>>            ShowBorders="0"
>>>            LowerLeft="-1  -1  -1"
>>>            LowerRight="1    -1  -1"
>>>            UpperRight="1    1   -1"/>
>>>     <Machine Name="CBR"
>>>            Environment="DISPLAY=:0.7"
>>>            Geometry="2560x1600+0+0"
>>>            FullScreen="1"
>>>            ShowBorders="0"
>>>            LowerLeft="-1  -1  -1"
>>>            LowerRight="1    -1  -1"
>>>            UpperRight="1    1   -1"/>
>>>  </Process>
>>> </pvx>
>>>
>>> The problem is that I don't see any distinction between the left, and
>>> the right eye. I would have attached images if it helps but that may make
>>> my email too big to be approved by the moderator.
>>>
>>> About the setup in the lab - we have 8 projectors driving this 4-sdied
>>> cave, 2 projectors for each wall. The projectors do active stereo,
>>> 2560x1600 resolution.
>>>
>>> We think the issue maybe with setting up the correct view frustum but
>>> not sure. Anybody seen this issue before?
>>> --
>>> Faiz Abidi | Master's Student at Virginia Tech | www.faizabidi.com<
>>> http://www.faizabidi.com> | +1-540-998-6636<tel:%2B1-540-998-6636>
>>>
>>> _______________________________________________
>>> Powered by www.kitware.com<http://www.kitware.com>
>>>
>>> Visit other Kitware open-source projects at
>>> http://www.kitware.com/opensource/opensource.html
>>>
>>> Please keep messages on-topic and check the ParaView Wiki at:
>>> http://paraview.org/Wiki/ParaView
>>>
>>> Search the list archives at: http://markmail.org/search/?q=ParaView
>>>
>>> Follow this link to subscribe/unsubscribe:
>>> http://public.kitware.com/mailman/listinfo/paraview
>>>
>>>
>>>
>>>
>>> --
>>> Faiz Abidi | Master's Student at Virginia Tech | www.faizabidi.com<
>>> http://www.faizabidi.com> | +1-540-998-6636<tel:%2B1-540-998-6636>
>>>
>>>
>>>
>>>
>>> --
>>> Faiz Abidi | Master's Student at Virginia Tech | www.faizabidi.com<
>>> http://www.faizabidi.com> | +1-540-998-6636<tel:%2B1-540-998-6636>
>>>
>>>
>>>
>>> --
>>> Faiz Abidi | Master's Student at Virginia Tech | www.faizabidi.com<
>>> http://www.faizabidi.com> | +1-540-998-6636<tel:%2B1-540-998-6636>
>>>
>>>
>>>
>>> --
>>> Faiz Abidi | Master's Student at Virginia Tech | www.faizabidi.com<
>>> http://www.faizabidi.com> | +1-540-998-6636<tel:%2B1-540-998-6636>
>>>
>>> _______________________________________________
>>> Powered by www.kitware.com<http://www.kitware.com>
>>>
>>> Visit other Kitware open-source projects at
>>> http://www.kitware.com/opensource/opensource.html
>>>
>>> Please keep messages on-topic and check the ParaView Wiki at:
>>> http://paraview.org/Wiki/ParaView
>>>
>>> Search the list archives at: http://markmail.org/search/?q=ParaView
>>>
>>> Follow this link to subscribe/unsubscribe:
>>> http://public.kitware.com/mailman/listinfo/paraview
>>>
>>>
>>>
>>>
>>> --
>>> | Aashish Chaudhary
>>> | Technical Leader
>>> | Kitware Inc.
>>> | http://www.kitware.com/company/team/chaudhary.html
>>>
>>>
>>>
>>> --
>>> Faiz Abidi | Master's Student at Virginia Tech | www.faizabidi.com<
>>> http://www.faizabidi.com> | +1-540-998-6636
>>>
>>
>>
>>
>> --
>> Faiz Abidi | Master's Student at Virginia Tech | www.faizabidi.com |
>> +1-540-998-6636
>>
>
>
>
> --
>
>
>
> *| Aashish Chaudhary | Technical Leader         | Kitware Inc.            *
> *| http://www.kitware.com/company/team/chaudhary.html
> <http://www.kitware.com/company/team/chaudhary.html>*
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the ParaView Wiki at:
> http://paraview.org/Wiki/ParaView
>
> Search the list archives at: http://markmail.org/search/?q=ParaView
>
> Follow this link to subscribe/unsubscribe:
> http://public.kitware.com/mailman/listinfo/paraview
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/paraview/attachments/20160330/9ef4f35a/attachment-0001.html>


More information about the ParaView mailing list