Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Are you still working ont it? #1

Closed
RYG81 opened this issue Oct 24, 2015 · 7 comments
Closed

Are you still working ont it? #1

RYG81 opened this issue Oct 24, 2015 · 7 comments

Comments

@RYG81
Copy link

RYG81 commented Oct 24, 2015

Hey Jam,
Are you still working on this?
Could you tell me how exactly it works?
Can I use for my personal but commercial production?
Rahul

@jam3sward
Copy link
Owner

Hi Rahul

Yes, this is still being used daily, and there are some further changes planned. In particular, one of my colleagues has been making some changes to support AMD graphics cards - I plan to integrate his code changes to this repository soon.

To use it, you add the scripts provided with Quadifier to Unity, build your Unity project to create an executable, then run that executable through the Quadifier "launcher". Here's a short explanation of how that works:

  1. There are some scripts in Unity 3D which cause Unity to render left/right eye views sequentially in the same window. i.e. without Quadifier these would appear on top of each other, so you would only see the last one drawn.
  2. Quadifier intercepts the DirectX 9 drawing calls made by Unity, and causes Unity to render the left/right eye views to an off-screen buffer instead of to the window.
  3. The DirectX off-screen buffer is directly shared with OpenGL using the NV_DX_interop
  4. Quadifier creates a quad-buffer OpenGL stereo window (covering the normal DirectX window!), and renders the contents of the off-screen buffer to the left/right stereo channels in OpenGL

There is some further explanation in the Wiki here:
/quadifier/wiki
Finally, there is more technical detail in the readme here:
/quadifier/win32/readme.txt

You can use the software for any purpose (including commercially), provided it includes an acknowledgement in the documentation as indicated in the license agreement in the source files:
/quadifier/win32/source/main.cpp

Hope this helps?
Regards
James

@RYG81
Copy link
Author

RYG81 commented Oct 24, 2015

I heard that Unity after 4.6 supports stereoscopic 3 rendering. How that is
used in this tool?
All are you planning to get this thing work right from Unity without adding
that additional off window rendering? Not sure but may be this could
improve performance.

And thanks for making this tool.
Rahul

On Sat, Oct 24, 2015 at 6:10 PM, jam3sward notifications@github.com wrote:

Hi Rahul

Yes, this is still being used daily, and there are some further changes
planned. In particular, one of my colleagues has been making some changes
to support AMD graphics cards - I plan to integrate his code changes to
this repository soon.

To use it, you add the scripts provided with Quadifier to Unity, build
your Unity project to create an executable, then run that executable
through the Quadifier "launcher". Here's a short explanation of how that
works:

  1. There are some scripts in Unity 3D which cause Unity to render
    left/right eye views sequentially in the same window. i.e. without
    Quadifier these would appear on top of each other, so you would only see
    the last one drawn.
  2. Quadifier intercepts the DirectX 9 drawing calls made by Unity, and
    causes Unity to render the left/right eye views to an off-screen buffer
    instead of to the window.
  3. The DirectX off-screen buffer is directly shared with OpenGL using
    the NV_DX_interop
  4. Quadifier creates a quad-buffer OpenGL stereo window (covering the
    normal DirectX window!), and renders the contents of the off-screen buffer
    to the left/right stereo channels in OpenGL

There is some further explanation in the Wiki here:
https://github.com/jam3sward/quadifier/wiki
Finally, there is more technical detail in the readme here:

https://github.com/jam3sward/quadifier/blob/e2f4730b9c1b93fd5ecd6e3f9d370b472939f407/quadifier/win32/readme.txt

You can use the software for any purpose (including commercially),
provided it includes an acknowledgement in the documentation as indicated
in the license agreement in the source files:

https://github.com/jam3sward/quadifier/blob/master/quadifier/win32/source/main.cpp

Hope this helps?
Regards
James


Reply to this email directly or view it on GitHub
#1 (comment).

@jam3sward
Copy link
Owner

Hi Rahul

You're right that Unity 4.6+ now supports DirectX 11.1 stereo, from Windows 8.1 upwards (more details here). There's no support for DirectX stereo in Quadifier currently, and I've not yet had the opportunity to test it as we are still running Windows 7 on all our stereo PCs. It would be useful to add another rendering path for DirectX stereo to Quadifier at some stage. As you say, performance would be improved.
For simple single window applications running on consumer 3D hardware, the built in Unity stereo using DirectX is probably preferable to Quadifier. However, there are some circumstances where Quadifier may still be preferred:

  1. When using multiple displays (e.g. CAVE type displays) with different viewpoints
  2. When you need full control over the stereoscopic viewing system (asymmetric frustum)
  3. When OpenGL stereo output is needed
  4. When using head-tracking
  5. When the OS, drivers or hardware don't support DirectX stereo, or when OpenGL stereo is preferred
  6. For Linux support

Incidentally, we recently updated one of our PCs to Windows 10, and we are unable to get stereo to work at all (DirectX or OpenGL, even the built in NVIDIA stereo tests don't work). For this reason, we have resisted updating any more PCs. I assume it will be fixed at some stage though as the OS and drivers improve.

Regards
James

@RYG81
Copy link
Author

RYG81 commented Nov 23, 2015

Hi James, Did you implemented the AMD part that you mentioned in earlier message?

@jam3sward
Copy link
Owner

Hi Rahul
Yes, I'm pleased to say that the AMD support has now been added (by my colleague Jason - I've merged his changes to this repository).
Regards
James

@RYG81
Copy link
Author

RYG81 commented Nov 23, 2015

Thanks
I should check and update you asap.
Rahul

On Mon, Nov 23, 2015 at 7:39 PM, jam3sward notifications@github.com wrote:

Hi Rahul
Yes, I'm pleased to say that the AMD support has now been added (by my
colleague Jason - I've merged his changes to this repository).
Regards
James


Reply to this email directly or view it on GitHub
#1 (comment).

@jam3sward
Copy link
Owner

Closing this due to inactivity.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants