glVertexAttribPointer
OpenGLで(拡張機能などを介して) 、すべての頂点に対して1つではなく、すべてのプリミティブ(またはN個の頂点)に対して1つずつ進む型関数によって指定された属性配列を持つことが可能かどうか疑問に思っていますか?
たとえば、現在単色の三角形の配列がある場合、すべての頂点に対して同じ色データを繰り返す必要があります。代わりに、これらの線に沿ったものが必要です。
struct pos {
uint8_t x, y;
} positions[NUM_VERTICES];
struct col {
uint8_t r, g, b;
} colors[NUM_VERTICES / 3];
両方の配列がOpenGLに送信され、単一の配列でレンダリングされるときに、配列の1つの要素がcolors
3つの連続する要素ごとに再利用される場合positions
glVertexAttribPointer
glDrawArrays(GL_TRIANGLES, ...);
ARB_instanced_arrays
最初は有望に思えた機能を提供する拡張機能を見つけましたが、glVertexAttribDivisorARB
私が説明したようには機能しないと思います。