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

Stencil not detected (RemoteGL) #157

Open
CartridgeGen opened this issue Mar 18, 2016 · 12 comments
Open

Stencil not detected (RemoteGL) #157

CartridgeGen opened this issue Mar 18, 2016 · 12 comments

Comments

@CartridgeGen
Copy link

Hello, I used a previous version to get the shim working remotely over exagear, now I wanted to update the files with the new source that has been worked on. My program now fails to run with the updated version of unstable branch when it was running with a november 2015 version of the unstable branch.

This is the error that it gives me.
glXGetProcAddress: glBlendEquation not found. Failed to use stencil buffer! Resolution: 640 x 480 libgl_remote killed with signal: 7 Aborted

@lunixbochs
Copy link
Owner

Can you run with LIBGL_REMOTE_NOISY=1?

@CartridgeGen
Copy link
Author

This is what came up :

libGL: warning, gles is NULL libGL:loaded: libEGL.so.1 libGL: built on Mar 18 2016 12:36:11 remote_serve #17 libGL: remote pid 3627 remote call: glXCreateContext(0x9364658, 0x937de68, (nil), 1); libGL: built on Mar 18 2016 12:39:18 libGL:loaded: libGLESv1_CM.so libGL:loaded: libEGL.so returned (4): 0x1479408 remote call: glXMakeCurrent(0x9364658, 56623118, 0x1692f0); returned (4): 0x1 remote call: glXMakeCurrent(0x9364658, 56623118, 0x1692f0); returned (4): 0x1 remote call: glGetString(0x1F03); returned (4): 0x1252348 remote call: glGetString(0x1F02); returned (4): 0x1252328 remote call: glGetString(0x1F00); returned (4): 0x3054191108 glXGetProcAddress: glBlendEquation not found. returned (4): 0x8192 remote call: glPixelStorei(0x0CF5, 1); Failed to use stencil buffer! Resolution: 640 x 480 libgl_remote killed with signal: 7 Aborted

@lunixbochs
Copy link
Owner

I don't see how it could've worked before with LIBGL_REMOTE, as they're calling SDL_GL_GetAttribute, which wraps glXGetConfig, which I've never supported in remote. I'll add support tonight.

@CartridgeGen
Copy link
Author

Thanks, I have the november files aswell, I can make it run and give the output if you need such things.

@lunixbochs
Copy link
Owner

Try the latest unstable. Remember to rebuild both libgl_remote on the native host and libGL.so on the emulated guest.

@CartridgeGen
Copy link
Author

Wow! That was fast! xD I'll try it and give you feedback tomorrow. Thanks a bunch!

@CartridgeGen
Copy link
Author

It crashes still, here is the output of NOISY :
libGL: warning, gles is NULL libGL:loaded: libEGL.so.1 libGL: built on Mar 18 2016 22:21:49 remote_serve #17 libGL: remote pid 1712 remote call: glXCreateContext(0x9364658, 0x937de50, (nil), 1); libGL: built on Mar 18 2016 22:25:56 libGL:loaded: libGLESv1_CM.so libGL:loaded: libEGL.so returned (4): 0x1479408 remote call: glXMakeCurrent(0x9364658, 48234510, 0x1692f0); returned (4): 0x1 remote call: glXMakeCurrent(0x9364658, 48234510, 0x1692f0); returned (4): 0x1 remote call: glGetString(0x1F03); returned (4): 0x1252424 remote call: glGetString(0x1F02); returned (4): 0x1252404 remote call: glGetString(0x1F00); returned (4): 0x3054109188 glXGetProcAddress: glBlendEquation not found. returned (4): 0x8192 remote call: glPixelStorei(0x0CF5, 1); Failed to use stencil buffer! Resolution: 640 x 480 libgl_remote killed with signal: 7 Aborted

--EDIT--
I've recompiled the november 2015 version of the shim and re-tried the program, it works and here is a screenie of the shim working and the window opened.
http://i67.tinypic.com/20gfjie.png

@lunixbochs
Copy link
Owner

Uhh I've had a hardcoded stencil size of zero since 2013: 49261f4#diff-677181a93120cd771fa18c6651230758R72

void SDLGLFB::InitializeState() 
{
    int value = 0;
    SDL_GL_GetAttribute( SDL_GL_STENCIL_SIZE, &value );
    if (!value) 
    {
        Printf("Failed to use stencil buffer!\n");  //[C] is it needed to recreate buffer in "cheapest mode"?
        gl.flags|=RFL_NOSTENCIL;
    }
}

This also doesn't seem to be a failure case, it's just a random print.
Can you attach GDB and get a backtrace on abort? (add -ggdb to CMakeLists.txt add_definitions() call if there are no glshim symbols).

If it's aborting in LIBGL_REMOTE, set LIBGL_REMOTE_GDB=1 to attach gdb on spawn, or if you're having trouble bouncing gdb through exagear replace libgl_remote with a shell script that runs gdb --args libgl_remote "$@"

@lunixbochs
Copy link
Owner

lunixbochs commented Mar 20, 2016 via email

@CartridgeGen
Copy link
Author

I'm running zandronum and I will give the the .ini file to put in .zandronum because I run it with GL compatibility or else the shim won't work at all. There's also other changes made to the ini file that makes the game a bit faster and helps with compat. Here's the ini file on zippy and here's the website with the instructions on how to use zandronum on linux. You absolutely have to use the ini file I made or else the game wont work. http://zandronum.com/download#instubuntu http://www65.zippyshare.com/v/4uj9zEuN/file.html

--edit--

also just google "doom 1 2 3 plutionia tnt" and you will find the website pc-freak, just get the doom2wad there and rename it with all lowercase letters doom2.wad or else zandronum wont find it.

@lunixbochs
Copy link
Owner

Looks like that's open source - why are you running it under remote rendering?

On Mar 20, 2016, at 12:23 PM, CartridgeGen [email protected] wrote:

I'm running zandronum and I will give the the .ini file to put in .zandronum because I run it with GL compatibility or else the shim won't work at all. There's also other changes made to the ini file that makes the game a bit faster and helps with compat. Here's the ini file on zippy and here's the website with the instructions on how to use zandronum on linux. You absolutely have to use the ini file I made or else the game wont work. http://zandronum.com/download#instubuntu http://www65.zippyshare.com/v/4uj9zEuN/file.html


You are receiving this because you commented.
Reply to this email directly or view it on GitHub

@CartridgeGen
Copy link
Author

It wont compile on ARM and I've talked with the devs there for years and there's too many 86-ism's in the code as I've been told and I've also tried multiple times without sucess. It kept stopping at 70-75%.

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