A very strange thing happening on the latest 4.2 update of the Nexus 7. I am using a common framework to pass data to shaders over a standard "contract". When I switched a certain shader from per-pixel to per-vertex lighting, but keeping basically the same data types, I began having odd problems passing in a vec4 array uniform, but only in that specific driver. Here are steps I have verified:
No compile or link errors. No errors (not -1) while looking up uniform locations (more on those). All other shaders are working fine and have been working well for months. The location code, which is normally 0 through some-small-number that is returned on prior calls is huge only in this shader. I'm sure there's no standard as to what those values are (as long as they're not -1) and NV might be using a mask to determine the location in memory where this data might reside, but when using these odd values, I get undefined results. Below is the output from the log. Note that some values are fine and others are strange (8213, 3158020) and cause crashes when accessed NOTE: locCache is what glGetUniformLocation returns after successful link. 11-23 02:06:31.030: D/Henberry(3489): HBShader::findUniform(): err=0, _program=6, name=Um4_projMat, result=0 11-23 02:06:31.030: D/Henberry(3489): _shader=0x68946a10, var=Um4_projMat, index=5, locCache=0 11-23 02:06:31.030: D/Henberry(3489): HBShader::findUniform(): err=0, _program=6, name=Um4_mvMat, result=*8213* 11-23 02:06:31.030: D/Henberry(3489): _shader=0x68946a10, var=Um4_mvMat, index=6, locCache=*8213* 11-23 02:06:31.030: D/Henberry(3489): HBShader::findUniform(): err=0, _program=6, name=UsampA3_tex, result=2 11-23 02:06:31.030: D/Henberry(3489): _shader=0x68946a10, var=UsampA3_tex, index=3, locCache=2 11-23 02:06:31.030: D/Henberry(3489): HBShader::findUniform(): err=0, _program=6, name=Uv4a_lights, result=*3158020* 11-23 02:06:31.030: D/Henberry(3489): _shader=0x68946a10, var=Uv4a_lights, index=9, locCache=*3158020* This has been driving me crazy for several days now. I have double and triple checked everything I can think of. If posting the vert/fragment shaders would help, I'd be glad to. Does anyone have a thought on this one? Thanks in advance, Roger -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en