I am using Vuforia with openGL initialized inside of a NativeActivity and I'm not using a glSurfaceView. I am able to initialize the library, start the camera and track markers. I am unable to draw the camera image. I have tried creating a texture from the pixel data as well as bind the camera texture to a shader and drawing it directly. I think the problem is the context created in my native activity is not shared with the context being used by the Vuforia library to draw the camera image. Is there any other way of getting the camera image? Here is a dump of my logcat. You can see that the Vuforia RenderManager is complaining about not being able to retrieve a valid glsurfaceview and then when I call QCAR::Renderer::getInstance().drawVideoBackground(); I get a GL_INVALID_OPERATION from the Vuforia library and the image is black. I am very close to being able to use the library as everything is working except the camera texture. Any help would be very much appreciated.
09-11 15:08:30.629 501-540/net.jameshurlbut.vuforiaappnew I/AR﹕ QCAR has been initialized successfully09-11 15:08:30.630 501-540/net.jameshurlbut.vuforiaappnew I/AR﹕ QCAR SDK version 5.0.509-11 15:08:30.751 501-540/net.jameshurlbut.vuforiaappnew D/AR﹕ RenderManager: Could not retrieve a valid GLSurfaceView in view hierarchy, therefore cannot set any render mode09-11 15:08:30.751 501-540/net.jameshurlbut.vuforiaappnew I/cinder﹕ |info | int VuforiaAppNew::initTracker()[64] initTracker 435409-11 15:08:30.773 501-540/net.jameshurlbut.vuforiaappnew I/cinder﹕ |info | int VuforiaAppNew::initTracker()[75] Successfully initialized ObjectTracker.09-11 15:08:30.774 501-540/net.jameshurlbut.vuforiaappnew I/cinder﹕ |info | int VuforiaAppNew::loadTrackerData()[80] loadTrackerData09-11 15:08:30.774 501-540/net.jameshurlbut.vuforiaappnew I/AR﹕ ObjectTracker: Successfully created dataset09-11 15:08:31.296 501-540/net.jameshurlbut.vuforiaappnew I/cinder﹕ |info | int VuforiaAppNew::loadTrackerData()[115] Successfully loaded and activated data set.09-11 15:08:31.297 501-540/net.jameshurlbut.vuforiaappnew I/cinder﹕ |info | void VuforiaAppNew::startCamera()[120] startCamera09-11 15:08:31.471 501-540/net.jameshurlbut.vuforiaappnew I/cinder﹕ |info | void VuforiaAppNew::startCamera()[127] camera inited09-11 15:08:31.495 501-540/net.jameshurlbut.vuforiaappnew I/cinder﹕ |info | void VuforiaAppNew::startCamera()[132] camera default mode set09-11 15:08:31.495 501-540/net.jameshurlbut.vuforiaappnew I/cinder﹕ |info | void VuforiaAppNew::configureVideoBackground()[196] Configure Video Background : Video (1280,720), Screen (1080,1920), mSize (1080,1920)09-11 15:08:31.548 501-540/net.jameshurlbut.vuforiaappnew I/art﹕ Explicit concurrent mark sweep GC freed 17084(1192KB) AllocSpace objects, 1(138KB) LOS objects, 40% free, 19MB/32MB, paused 586us total 48.284ms09-11 15:08:31.562 501-540/net.jameshurlbut.vuforiaappnew I/cinder﹕ |info | void VuforiaAppNew::startCamera()[139] camera started09-11 15:08:32.054 501-540/net.jameshurlbut.vuforiaappnew W/Adreno-ES20﹕ <core_glVertexAttribPointer:525>: GL_INVALID_OPERATION
NativeActivity custom engine drawVideoBackground issues
Did you ever get a fix for this? I'm in a similar situation, the target markers work, but no video background is rendered. This is using Unity and builing for Android. Works fine in desktop and iOS.