googlevr / gvr-ios-sdk

Google VR SDK for iOS
http://developers.google.com/vr/ios/
Other
645 stars 191 forks source link

GL error: pre update: 1286 #300

Open NathanaelA opened 6 years ago

NathanaelA commented 6 years ago

When I switch into VR/glasses mode (i.e. scenerenderer.VRModeEnabled=true ), the control no longer renders (goes black) and starts tossing the same repeating errors (GL error: pre update: 1286) to the error log. Tracing through the code; the line that checks for errors is: https://github.com/googlevr/gvr-ios-sdk/blob/f0d9c1985ef67139825a1ec2f77c687a70c61f7b/Samples/GVRKit/GVRSceneRenderer.mm#L50

This is currently happening in version 1.80... Any ideas what I should be looking for.

sanjayc77 commented 6 years ago

Is this happening with the sample app as is?

NathanaelA commented 6 years ago

Not to my knowledge; in fact one of our apps is showing the issue; the other is not. But the weird thing is that the only difference I can even think between the two of them is that one app uses one of these controls and this app that we are working on that is showing this has two of these controls created at this moment (one is hidden and no longer in use, but looking in the log it hasn't been destroyed yet).

NathanaelA commented 6 years ago

Actually I take that back; we are only creating ONE GVR instance in the app; the other instance was a just a normal video control. (I just upgraded to 1.120 and the issue remains).

I honestly am not sure what differences there are between the apps; but one app works and one doesn't. And when it fails it throws that pre update: 1286 error -- any thoughts on what I should do, look for -- because there is no code before the error check that I can see, so I'm not 100% sure why that error would be occurring as this app only uses the opengl in your GVR stuff (i.e. we have nothing else that does any opengl in the app).

sanjayc77 commented 6 years ago

pre update log is to check that we are starting from a clean gl state. That means the last gl call, maybe in the draw function, should not have resulted in any gl error.

NathanaelA commented 6 years ago

Well I have some more info; as to what is going on -- but I can't seem to figure out how to clear the control properly.

So I have a GVRSceneRenderer and I just add a GVRVideoRenderer and it works great as it should. If I add just a GVRImageRenderer it works great.

However, if I use GVRSceneRenderer -> Add Image -> Remove Image -> Add Video. It fails.

The Scene.renderlist only shows 1 item in it (the video renderer), the image control has clearGl already called on it, and has been nil'd (so it shouldn't exist anymore). The non-cardboard control shows everything correctly; just when I enable cardboard mode it goes black with that error message.

Any ideas what I need to clear up/reset that might be holding on that is interfering?

sanjayc77 commented 6 years ago

Hmmm, can you fork a version of the sample app that can reproduce the issue?