GAPIS currently uses name pattern matching to find the 'position' stream.
It would seem that Unreal obfuscates their shader code, including the vertex attribute names:
0: in_ATTRIBUTE2, XYZW_U8_NORM
1: in_ATTRIBUTE15, XY_F16
2: in_ATTRIBUTE4, XYZW_F16
3: in_ATTRIBUTE0, XYZ_F32
4: in_ATTRIBUTE1, XYZW_U8_NORM
GAPIS currently uses name pattern matching to find the 'position' stream.
It would seem that Unreal obfuscates their shader code, including the vertex attribute names:
We could get GAPIS to fallback to looking for
XYZ_F32streams for position, but that's quite a risky solution.I still like the idea of analyzing the shader to infer the attributes that contributed to
gl_Position, but that's a fair amount of work.We should just let the user pick the streams they want to visualize, with some sort of sensible defaults.