Results 1 to 7 of 7

Thread: 3d stereo support (quad-buffer stereo)

  1. #1
    Join Date
    Oct 2007
    Location
    Under the bridge
    Posts
    2,133

    Default 3d stereo support (quad-buffer stereo)

    Do we know anything about the state of quad-buffer stereo in the open-source stack (either for r300 or, preferably, for r600)? Do the docs include the necessary information? Has anyone managed to get this working?

    I guess this is not a high priority right now but are there any plans to include stereo at some point? Would patches be accepted if someone actually manages to implement it?

  2. #2
    Join Date
    Oct 2007
    Location
    Toronto-ish
    Posts
    7,440

    Default

    I don't believe we have even thought about stereo for open source.

    Most of the work is HW-independent driver effort. For the part that is HW-dependent, I'm not sure if the GPU itself is involved with communicating which-eye info to the display/glasses or whether that's specific to the board (and not our IP).

    I was under the impression that only FirePRO boards supported stereo today, but maybe that's out-of-date info.

  3. #3
    Join Date
    Oct 2007
    Location
    Under the bridge
    Posts
    2,133

    Default

    Quote Originally Posted by bridgman View Post
    I don't believe we have even thought about stereo for open source.

    Most of the work is HW-independent driver effort. For the part that is HW-dependent, I'm not sure if the GPU itself is involved with communicating which-eye info to the display/glasses or whether that's specific to the board (and not our IP).

    I was under the impression that only FirePRO boards supported stereo today, but maybe that's out-of-date info.
    Active stereo needs dedicated hardware for the sync signal, that's certain. FireGL/Pro cards have dedicated outputs (probably IP-encumbered) but it's also possible to use the sync signal of VGA cables if you don't have those outputs.

    Passive stereo should be doable without a dedicated sync signal. All it takes is splitting left/right buffers to two different output connectors. Obviously, you then need a two polarized projectors which is not exactly cheap but hey! Geforce 256 & 2 cards used to support 3d stereo out of the box. It's sad to see modern hardware disable that feature for no good reason (for the consumer).

    I kinda wonder how modern 3d TVs operate. They probably generate their own sync signal for active glasses, in which case it should be trivial to enable 3d stereo in the drivers without infringing upon any IP: just advertise stereo formats and make sure to set the correct refresh rate. Make odd frames display the left buffer and even frames display the right buffer and the TV should handle the rest. (Kinda wonder if this can be achieved even without driver support).

    Does anyone have any more information on this topic? Even better, is there anyone with a 3d TV willing to run some tests?

  4. #4
    Join Date
    Dec 2007
    Posts
    2,360

    Default

    This article has some good info on the state of consumer 3D:
    http://www.tomshardware.com/reviews/...ctor,2589.html

  5. #5
    Join Date
    Oct 2007
    Location
    Under the bridge
    Posts
    2,133

    Default

    Quote Originally Posted by agd5f View Post
    This article has some good info on the state of consumer 3D:
    http://www.tomshardware.com/reviews/...ctor,2589.html
    Interesting overview and implementation, although it was somewhat lacking in details (e.g. polarized glasses can - and tend to - use circular polarization so they can work even if you tilt your head).

    It seems my gut feeling was correct, 3d HDTVs split odd/even frames and contain a built-in IR emitter to generate the sync signal. All you need is a pair of (rather pricey) active glasses.

    Now the question is whether the OSS drivers can be made to support this kind of stereo rendering, i.e. display the left buffer on odd frames and the right buffer on even frames. The driver would need to provide 4 buffers instead of two (front-left/right, back-left/right) and expose the necessary visuals and maintain some kind of frame counter so it can select which buffer to use for scan-out. Since the sync signal comes from the TV, that's all it should take (at least from my naive, non-driver-developer perspective).

    In fact, this could be emulated without driver support but the result would be very fragile (drop below 120fps and you have a 50% chance of flipping the left/right channels).

    Any driver developer care to offer some insight on this matter?

  6. #6
    Join Date
    Nov 2007
    Posts
    117

    Default

    If you want to pursue this, I would recommend checking out the DisplayPort 1.2 spec. It includes protocols for 3D stereo, so it seems to me that you could restrict your effort to generating the left and right images, and leave the hardware-specific display details to the display device.

  7. #7
    Join Date
    Aug 2008
    Posts
    30

    Default

    As 3D is coming up fast and whit a vengeance to the consumers right now whit 3D tv and 3d bluray etc I think it would be a good idea for the OSS developers to consider looking into and implementing the necessary things for it to be able to work.

    It would be nice if the implementation is started as soon as possible to not lag behind ages as the 3D introduction really starts going.
    Though it still is a niche thing at the moment and has steep price factors.

    I don't have the money or things needed but I've been looking into the whole 3D thing as of late and can tell it seems to be something quite nice to have. In the future I would for sure want to be able to play any game in 3D, either whit a active shutters or passive polarization. (though I am more interested in the passive implementation(though the industry seems more interested in the active one sadly))

    I've been waiting for the OSS drivers to mature before I really go over to Linux. The limited 3d and video still keeps me at bay to adopt it. (only have ati graphics in all computers I have)

    Heck when I really finally see the graphics drivers work I might start go back into programming. I was not to keen whit learning to program for windows and basically just stopped and put it away until I see the necessary groundwork done in Linux.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •