Hi, I had a look at your code and created an Eclipse project out of it;
(I had to change it quite a bit as you were using absolute storage and other extra stuff that I did not want to have for a quick testing; maybe next time please share code that can be easily compiled using the sample reources, such as the sample videos and textures, otherwise it takes so long....)
Also, I also had to change the target names so to use "chips" and "stones" and the StonesAndChips dataset;
however the changes above are not relevant (i.e. should not affect your issue);
but everything seems to work fine, I can see a nicely textured christmas ball floating (and slowly rotating) above the target, and the video dimensions always look good (matching the target size);
I can presume that the problem might come from the fact that on certain devices there might be some wierd "conflict" when using many different shaders in OpenGL;
what I would suggest to try is the following:
- at the beginning of your _renderFrame function, make sure to reset all the "modelview" matrices to an Identity matrix; you can do this by using the function SampleMath::Matrix44FIdentity(); note: do this only for the "modelview" matrices, NOT for the projection one.
- near the end of your _renderFrame() function, just before the line "SampleUtils::checkGlError("ImageTargets renderFrame");", add the following line of code:
glUseProgram(0);
This is a very important one (especially if you are using more than one shaders, like in your case).
The above might fix the problem.
You're welcome, glad to hear that it was solved !