[Vulkan] what should i do about this warning: BestPractices-vkCmdDrawIndexed-sparse-index-buffer

I'm getting this warning message when rendering meshes:

"[ UNASSIGNED-BestPractices-vkCmdDrawIndexed-sparse-index-buffer ]
Object 0: handle = 0x564eecccdf50, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0x9b6a1f08 | [Arm] The indices which were specified for the draw call only utilise approximately 5.89% of index buffer value range. Arm Mali architectures before G71 do not have IDVS (Index-Driven Vertex Shading), meaning all vertices corresponding to indices between the minimum and maximum would be loaded, and possibly shaded, whether or not they are used."

I think the problem is about using a u16 to represent the index.

I understand the warning, it looks like there is a possibility for vertices to be shaded even though they shouldn't be due to how some older Mali GPUs work.


I'm merging several meshes in three buffers, one for index, position and another for normal + texcoord.


  • Store positional attribute data in one buffer.

  • Interleave all remaining attributes in a second buffer."


Meshes info:

(Monkey head) index type: u16, index count: 2904
(Cone) index type: u16, index count: 186
(UV Sphere) index type: u16, index count: 2880

Rendering is working perfectly but these warning messages keep popping up.

What should I do?

Parents Reply Children
No data