Hi Dark_Photon, warmi,
[blockquote]Align to 16 bytes[/blockquote]
This recommendation refers to padding the attributes of every vertex to 16 byte boundaries.
[blockquote]#2 could waste a lot of space [and memory bandwidth]![/blockquote]
Definitely. I’ve softened the wording of this recommendation in the doc. It should improve the performance of GPU cache accesses but, as you’ve pointed out, is unlikely to help if it causes an application to be bottlenecked by storage space or memory bandwidth.
While making changes, I’ve also added clarification to the “Avoid changing the layout of VBO attribute data” recommendation. Here’s the revised section:
[blockquote]For optimal performance on PowerVR Graphics Cores, a mesh with static attribute data should:
• Use indexed triangle lists;
• Interleave VBO attribute data;
• Not include unused attributes
For optimal vertex shader execution performance, meshes transformed by the same vertex shader (even if compiled into different shader programs) must have the same VBO attribute data layout.
On some devices, padding each vertex to 16 byte boundaries may also improve performance.[/blockquote]