Recently I found an interesting bug with Adreno Profiler: this cannot work correctly with glVertexAttribPointer(indx=2, size=4, type=GL_HALF_FLOAT_OES, normalized=False, stride=32, ptr=0xC). For example, texcoords in half type are presented as strange numbers:
Since I have no access to the source code, I have to decompile it with ILSpy. The key codes can be found in QXProfilerControlsCS.dll. I replace the implemention for public static float HalfToFloat(uint half) in StateDataStoreHelper.cs with codes from CShart Half. (In fact, I’ve got no idea what does the original code mean…)