StereoAPI: access to second buffer in stereo.
Hi everybody!


Does anyone have experience in StereoAPI programming ?
I'm trying to implement post-effects (like motion blur etc.) in stereo mode
on Geforce 6600. Ofcourse I'm using consumer stereo drivers.
The problem is that I managed to get access to the back buffer for the first
stereo channel only (using standard OpenGL calls glReadBuffer and glReadPixels) and
can't get access to the second one! I know that current NVidia StereoAPI has nothing about it either.
Has anyone luck with such a trick or it is not possible to post-process the second
stereo image in cosumer stereo at all?
Hi everybody!





Does anyone have experience in StereoAPI programming ?

I'm trying to implement post-effects (like motion blur etc.) in stereo mode

on Geforce 6600. Ofcourse I'm using consumer stereo drivers.

The problem is that I managed to get access to the back buffer for the first

stereo channel only (using standard OpenGL calls glReadBuffer and glReadPixels) and

can't get access to the second one! I know that current NVidia StereoAPI has nothing about it either.

Has anyone luck with such a trick or it is not possible to post-process the second

stereo image in cosumer stereo at all?

#1
Posted 09/28/2006 06:11 PM   
May you send me StereoAPI SDK to arkadiy_s@inbox.ru? I can't nowhere find it.
May you send me StereoAPI SDK to arkadiy_s@inbox.ru? I can't nowhere find it.

#2
Posted 10/01/2006 01:05 PM   
[quote name='lab9' date='Sep 28 2006, 09:11 PM']Hi everybody!
Does anyone have experience in StereoAPI programming ?
I'm trying to implement post-effects (like motion blur etc.) in stereo mode
on Geforce 6600. Ofcourse I'm using consumer stereo drivers.
The problem is that I managed to get access to the back buffer for the first
stereo channel only (using standard OpenGL calls glReadBuffer and glReadPixels) and
can't get access to the second one! I know that current NVidia StereoAPI has nothing about it either.
Has anyone luck with such a trick or it is not possible to post-process the second
stereo image in cosumer stereo at all?
[right][post="116578"]<{POST_SNAPBACK}>[/post][/right][/quote]

Your ideas is good, but I think - you haven't any luck! All you can - to use Quadro-card and OpenGL Quadro-buffer ("hardware" stereo, supported by all Professional cards and OpenGL API). The mehanism of work 3Dstereo-driver by nVidia don't give you any chance (and DON't mean your manual improvements)!
[quote name='lab9' date='Sep 28 2006, 09:11 PM']Hi everybody!

Does anyone have experience in StereoAPI programming ?

I'm trying to implement post-effects (like motion blur etc.) in stereo mode

on Geforce 6600. Ofcourse I'm using consumer stereo drivers.

The problem is that I managed to get access to the back buffer for the first

stereo channel only (using standard OpenGL calls glReadBuffer and glReadPixels) and

can't get access to the second one! I know that current NVidia StereoAPI has nothing about it either.

Has anyone luck with such a trick or it is not possible to post-process the second

stereo image in cosumer stereo at all?

[post="116578"]<{POST_SNAPBACK}>[/post]




Your ideas is good, but I think - you haven't any luck! All you can - to use Quadro-card and OpenGL Quadro-buffer ("hardware" stereo, supported by all Professional cards and OpenGL API). The mehanism of work 3Dstereo-driver by nVidia don't give you any chance (and DON't mean your manual improvements)!

#3
Posted 10/01/2006 03:57 PM   
[quote name='KindDragon' date='Oct 1 2006, 04:05 PM']May you send me StereoAPI SDK to arkadiy_s@inbox.ru? I can't nowhere find it.
[right][post="117182"]<{POST_SNAPBACK}>[/post][/right][/quote]

Check your mailbox,
btw original link with StereoAPI usage sample is
[url="http://download.developer.nvidia.com/developer/SDK/Individual_Samples/screenshots/graphicsSamples/StereoAPI.html"]http://download.developer.nvidia.com/devel.../StereoAPI.html[/url]

Also it probably included in complete SDK, I didn't check it.
[quote name='KindDragon' date='Oct 1 2006, 04:05 PM']May you send me StereoAPI SDK to arkadiy_s@inbox.ru? I can't nowhere find it.

[post="117182"]<{POST_SNAPBACK}>[/post]




Check your mailbox,

btw original link with StereoAPI usage sample is

http://download.developer.nvidia.com/devel.../StereoAPI.html



Also it probably included in complete SDK, I didn't check it.

#4
Posted 10/02/2006 12:01 PM   
[quote name='gkv_x64' date='Oct 1 2006, 06:57 PM']Your ideas is good, but I think - you haven't any luck! All you can - to use Quadro-card and OpenGL Quadro-buffer ("hardware" stereo, supported by all Professional cards and OpenGL API). The mehanism of work 3Dstereo-driver by nVidia don't give you any chance (and DON't mean your manual improvements)!
[right][post="117217"]<{POST_SNAPBACK}>[/post][/right][/quote]

Surely professiaonal cards is a good way!
Although as far as I noted from the documentation
3D Stereo driver renders true pair of stereo pictures
(without fake effects like pixel shift), and by intuition
I suppose it to have plain picture of the second channel
somewhere in it's internals.. This picture has no appearence
at API level, may be to prove "consumer stereo" term :)
So it will be a good question to Nvidia.
Btw, do some of their engineers post answers to this forum ?

The second gap in stereo mode is to switch output to the correct
view just in time (I talk about page flipped stereo mode).
However I managed to achieve it by manually switching between
views using constant-rate rendering mechanism (based on OpenRM library).
So every second frame just rendered from slightly different virtual pose.
The main disadvantage is that this method highly depends on system load,
and there is no warranty (in OSes without realtime task scheduler) against frame skipping (which is unacceptable for stereo). However it may be a good solution
for linux programming.
(NVidia linux drivers doesn't have even consumer stereo. There is an old stereo emulator StereoGL but it do not work well... ).

I suppose the system load trouble could be solved if
we have a trigger on application level to vertical synchronization.
(I haven't find any suitable OpenGL calls for it,
just calls to turn on its internal vsync control. ).
The excellence with real time schedulers is that we
could warranty on application level "just in time" frame
switching without vsync trigger. In case of heavy GPU load
we can have "last-copies" of both pictures which we show on
screen if the new one is not ready. It will be a little decrease
in latency..
[quote name='gkv_x64' date='Oct 1 2006, 06:57 PM']Your ideas is good, but I think - you haven't any luck! All you can - to use Quadro-card and OpenGL Quadro-buffer ("hardware" stereo, supported by all Professional cards and OpenGL API). The mehanism of work 3Dstereo-driver by nVidia don't give you any chance (and DON't mean your manual improvements)!

[post="117217"]<{POST_SNAPBACK}>[/post]




Surely professiaonal cards is a good way!

Although as far as I noted from the documentation

3D Stereo driver renders true pair of stereo pictures

(without fake effects like pixel shift), and by intuition

I suppose it to have plain picture of the second channel

somewhere in it's internals.. This picture has no appearence

at API level, may be to prove "consumer stereo" term :)

So it will be a good question to Nvidia.

Btw, do some of their engineers post answers to this forum ?



The second gap in stereo mode is to switch output to the correct

view just in time (I talk about page flipped stereo mode).

However I managed to achieve it by manually switching between

views using constant-rate rendering mechanism (based on OpenRM library).

So every second frame just rendered from slightly different virtual pose.

The main disadvantage is that this method highly depends on system load,

and there is no warranty (in OSes without realtime task scheduler) against frame skipping (which is unacceptable for stereo). However it may be a good solution

for linux programming.

(NVidia linux drivers doesn't have even consumer stereo. There is an old stereo emulator StereoGL but it do not work well... ).



I suppose the system load trouble could be solved if

we have a trigger on application level to vertical synchronization.

(I haven't find any suitable OpenGL calls for it,

just calls to turn on its internal vsync control. ).

The excellence with real time schedulers is that we

could warranty on application level "just in time" frame

switching without vsync trigger. In case of heavy GPU load

we can have "last-copies" of both pictures which we show on

screen if the new one is not ready. It will be a little decrease

in latency..

#5
Posted 10/02/2006 01:06 PM   
[quote name='lab9' date='Sep 29 2006, 03:11 AM']Does anyone have experience in StereoAPI programming ?
I'm trying to implement post-effects (like motion blur etc.) in stereo mode
on Geforce 6600. Ofcourse I'm using consumer stereo drivers.
The problem is that I managed to get access to the back buffer for the first
stereo channel only (using standard OpenGL calls glReadBuffer and glReadPixels) and
can't get access to the second one! I know that current NVidia StereoAPI has nothing about it either.
Has anyone luck with such a trick or it is not possible to post-process the second
stereo image in cosumer stereo at all?
[right][post="116578"]<{POST_SNAPBACK}>[/post][/right][/quote]
Try you read from buffers GL_BACK_LEFT and GL_BACK_RIGHT?
Anyone has StereoBlt SDK for draw prerendered stereo image?
[quote name='lab9' date='Sep 29 2006, 03:11 AM']Does anyone have experience in StereoAPI programming ?

I'm trying to implement post-effects (like motion blur etc.) in stereo mode

on Geforce 6600. Ofcourse I'm using consumer stereo drivers.

The problem is that I managed to get access to the back buffer for the first

stereo channel only (using standard OpenGL calls glReadBuffer and glReadPixels) and

can't get access to the second one! I know that current NVidia StereoAPI has nothing about it either.

Has anyone luck with such a trick or it is not possible to post-process the second

stereo image in cosumer stereo at all?

[post="116578"]<{POST_SNAPBACK}>[/post]


Try you read from buffers GL_BACK_LEFT and GL_BACK_RIGHT?

Anyone has StereoBlt SDK for draw prerendered stereo image?

#6
Posted 10/02/2006 04:14 PM   
[quote name='lab9' date='Oct 2 2006, 04:06 PM']Btw, do some of their engineers post answers to this forum ?
[right][post="117428"]<{POST_SNAPBACK}>[/post][/right][/quote]
I'm here from forum topic was opened (not very long time - less then 1 year, if I not wrong) - NEVER from any programmers/engineers, anybody from nVidia who know about stereo post answers here /no.gif' class='bbc_emoticon' alt=':no:' />


[quote name='"KindDragon"']Try you read from buffers GL_BACK_LEFT and GL_BACK_RIGHT?
Anyone has StereoBlt SDK for draw prerendered stereo image?[/quote]
Post again - try to see WATH they use here:
[url="http://darkfader.net/3dstereo/"]http://darkfader.net/3dstereo/[/url]
(3 arhives + text on down of screen)
3D Stereo filter & player, based "This DirectShow filter is for playing 3D stereo movies using the NVidia 3D stereo driver". With SOURCE on C++. So, you can see it.
Sure it not for OpenGL... but for stereo-picture/video output.
[quote name='lab9' date='Oct 2 2006, 04:06 PM']Btw, do some of their engineers post answers to this forum ?

[post="117428"]<{POST_SNAPBACK}>[/post]


I'm here from forum topic was opened (not very long time - less then 1 year, if I not wrong) - NEVER from any programmers/engineers, anybody from nVidia who know about stereo post answers here /no.gif' class='bbc_emoticon' alt=':no:' />





[quote name='"KindDragon"']Try you read from buffers GL_BACK_LEFT and GL_BACK_RIGHT?

Anyone has StereoBlt SDK for draw prerendered stereo image?

Post again - try to see WATH they use here:

http://darkfader.net/3dstereo/

(3 arhives + text on down of screen)

3D Stereo filter & player, based "This DirectShow filter is for playing 3D stereo movies using the NVidia 3D stereo driver". With SOURCE on C++. So, you can see it.

Sure it not for OpenGL... but for stereo-picture/video output.

#7
Posted 10/03/2006 07:20 AM   
[quote name='KindDragon' date='Oct 2 2006, 07:14 PM']Try you read from buffers GL_BACK_LEFT and GL_BACK_RIGHT?
Anyone has StereoBlt SDK for draw prerendered stereo image?
[right][post="117442"]<{POST_SNAPBACK}>[/post][/right][/quote]


No way..
OpenGL gives the same image with GL_BACK_LEFT and GL_BACK_RIGHT,
since it runs in single channel mode, and it doesn't initialize in quad buffered
stereo mode on non-quadro NVidia cards.
[quote name='KindDragon' date='Oct 2 2006, 07:14 PM']Try you read from buffers GL_BACK_LEFT and GL_BACK_RIGHT?

Anyone has StereoBlt SDK for draw prerendered stereo image?

[post="117442"]<{POST_SNAPBACK}>[/post]






No way..

OpenGL gives the same image with GL_BACK_LEFT and GL_BACK_RIGHT,

since it runs in single channel mode, and it doesn't initialize in quad buffered

stereo mode on non-quadro NVidia cards.

#8
Posted 10/03/2006 10:34 AM   
I'm not find in source code any calls nvidia stereo driver.

Today i'm find stereoblt example
[url="http://rapidshare.de/files/35427143/NvSterEx.zip.html"]http://rapidshare.de/files/35427143/NvSterEx.zip.html[/url]
I'm not find in source code any calls nvidia stereo driver.



Today i'm find stereoblt example

http://rapidshare.de/files/35427143/NvSterEx.zip.html

#9
Posted 10/03/2006 11:11 AM   
Scroll To Top