GithubHelp home page GithubHelp logo

jam3sward / quadifier Goto Github PK

View Code? Open in Web Editor NEW
24.0 24.0 12.0 788 KB

OpenGL Quad Buffer Stereo 3D for the Unity Game Engine (and potentially others)

C++ 85.71% Makefile 0.04% C 8.96% Assembly 0.27% JavaScript 5.03%

quadifier's People

Contributors

jam3sward avatar scsjason avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

quadifier's Issues

Failed to hook GetProAddress with Win10 X64

Hi ,James
I released a X64 verson.But the process pushed out a messagebox ,
that said "Failed to hook GetProAddress " .If ignored , the EXE file also can launch.
But some shakeed render would occur.
I had tested some times, it works well on Win7 .only happen on Win8/Win10!

System:Win10 X64
IDE:VS 2015
Graphic Card:NV Quadro M4000
Driver of Graphic Card:377.11

No StereoGL in Unity 5.4

Hi James,

I tested quadifier with Unity 5.4.0f3.
Although the log seems to indicate that everything works fine I do not get a stereo effect.

I am not entirely sure that the Unity version is the problem because I hade to build with VS 2015
and had to slightly alter the project in order to compile.

It would be great if you could take a look at it. I will attach the logfile and hope it may help you.
intercept.txt

Thanks,
Pascal

Failed In Unity5.3+

Hi Jam,
Are you still working on this? I tried your code in Unity5.3+ and then I opened "intercept.log", not found "Stereo enabled" which I can find within Unity4.5.1f1.

Needs to have "Show Unity Splash Screen" enabled in Pro

This was mentioned in comment on previous issue #6, namely:
"I got this working. "Show Unity Splash Screen" must be enabled."
Haven't reproduced personally, still needs to be investigated. For the moment, I'm recording this as an issue in case others experience the same.

Are you still working ont it?

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

Fails to start when Graphic quality is “Beautiful” or above

Hi Jam,
I built the quadifier with VS 2015.and built a demo in Unity3d 5.3.6f1.it worked well.
but when i changed the options' value ,it was failed.
1.Needs to have "Show Unity Splash Screen" enabled in Pro"
you had discussed with Jack. But I met it again and couldn't solve it in your solution.I don't why.
2.it failed when the option of Graphic quality is “Beautiful” or above
maybe it need to be spported by DX11 or DX12. i see your code has DX11.

i will appreciate your reply
thanks
Richard

intercept.log:

0: DLL_PROCESS_ATTACH
247: CreateWindowExW(?,OleMainThreadWndName,-2147483648,-2147483648 -2147483648x-2147483648)
251: CreateWindowExW(UnityWndClass,,-2147483648,-2147483648 320x240)
254: Direct3DCreate9(32)
254: Settings: passThrough = false
254: Settings: useTexture = false
254: Settings: preventModeChange = true
254: Settings: matchOriginalMSAA = true
254: Settings: stereoIndicator = false
254: Settings: logLevel = info
261: IDirect3D9Proxy(024EFCA0)
303: CreateDevice(0,1,001304E2,70,02255DC4,02255E00)
304: using Direct3D9Ex
1053: CreateWindowExA(?,NVOGLDC invisible,-2147483648,0 -2147483648x0)
1443: IDirect3DDevice9Proxy(0C54C820,02514398)
1443: new IDirect3DDevice9Proxy(0C54C820,02514398)=0C774598
1795: CreateWindowExW(ComboLBox,?,0,24 126x122)
1798: CreateWindowExW(ComboLBox,?,0,24 126x100)
1800: CreateWindowExW(ComboLBox,?,0,24 126x122)
1802: CreateWindowExW(SysHeader32,?,0,0 0x0)
1803: CreateWindowExW(EDIT,,0,0 16384x16384)
1804: CreateWindowExW(tooltips_class32,?,0,0 0x0)
1805: CreateWindowExW(EDIT,,0,0 16384x16384)
1808: CreateWindowExW(CicMarshalWndClass,CicMarshalWnd,0,0 0x0)
1411142: IDirect3DDevice9::Reset: 1920x1080,backBuffers=1,windowed=1
1412177: CreateWindowExW(GLCLASS,,0,0 8x8)
1412181: CreateWindowExA(?,NVOGLDC invisible,-2147483648,0 -2147483648x0)
1412205: CreateWindowExA(?,__wglDummyWindowFodder,-2147483648,-2147483648 -2147483648x0)
1412260: CreateWindowExW(GLCLASS,,0,0 8x8)
1412264: OpenGL forced AA samples = 0
1412264: Create DX render targets
1412267: DX render target surface format: D3DFMT_A8R8G8B8
1412267: DX viewport = 1920x1080
1412267: DX multisample type = D3DMULTISAMPLE_2_SAMPLES
1412267: DX depth/stencil surface format: D3DFMT_D24S8
1412267: error: failed to create DX render target
1412267: starting GL rendering thread
1412267: thread = 8e4
1412267: Error Setting Render Target

Four problems

Hi James,
There are four problems bothering me.
1.Can't attach camera image effect scripts.(Error:Error Setting Render Target at beginCapture() SetRenderTarget(......));
2.Left/Right eye is not always in Left/Right sequence, Sometimes in Right/Left sequence;
3.When I drag the window with the mouse. Mouse event and Keyboard event will be invalid(Unity scripts);
4.CreateRenderTarget : MultiSample != D3DMULTISAMPLE_NONE => error: failed to create DX render target;
Any suggestion for me? :)

Left/Right eye sequence is sometimes reversed

This issue was original reported by JackLikePython on issue #9 with a description as follows: "Left/Right eye is not always in Left/Right sequence, sometimes in Right/Left sequence"

I am currently unable to reproduce. Steps to reproduce would be appreciated, if anyone sees the same issue.

Unity Scripts

Hi James,

first thank you a lot for sharing your work. I have a simple question. In the wiki it's mentioned that there are scripts necessary to render left and right channels in the correct order ("It requires some scripts on the Unity side to render the left and right channels in the correct order"). But for me when i build a Unity scene with two cameras (left, right) without any scripts and start it via Quadifier everything looks pretty good. Do I get something totally wrong or do I miss something?

Thank you
Paul

Error with CreateRenderTarget at Quadifier.cpp line 1235 when antialiasing is enabled

Error Log: ‘error: failed to create DX render target;’
Decription: Unity use antialiasing, So MultiSample != D3DMULTISAMPLE_NONE
My solution:
Quadifier.cpp 1225 line
if (m_device->CreateRenderTarget(
m_width,
m_height,
displayMode.Format,
desc.MultiSampleType,
desc.MultiSampleQuality,
FALSE,
&m_target[i].surface,
NULL//&m_target[i].shareHandle
) != S_OK) {
Log::print("error: failed to create DX render target\n");
exit(1);
break;
}
else
{
Log::print("create DX render target success ") << m_target[i].surface << endl;
}

Failed to inject?

Hey!

Quadifier seems to tick all the boxes for my project I'm working on, but I can't seem to get the stereo output to work. When I drag my Unity file onto the launcher I just recieve an "failed to inject" message - I tried both 32 and 64 bit builds.

I'm on Windows 7 using a Quadro K5200 and using Unity 5. Any idea on how to fix this?
Thank you!

edge blend

see wiki sai:"Projector overlap, edge-blending and warping is implemented on the graphics card, using the desktop overlap and NVIDIA Warp & Blend API." Can this tool be provided?Thanks

Is this limited to nvidia cards?

FROM THE DESCRIPTION
Most of the work is carried out by the Quadifier class. It causes Direct3D
to render into a render target instead of the screen. The corresponding
surface is mapped onto an OpenGL texture or renderbuffer using the NVIDIA
NV_DX_interop extension
. This is attached to a framebuffer object. The
framebuffer object is blitted to the back left or back right OpenGL render
buffers as appropriate.

Is this limited to nvidia cards only?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.