2016-11-06 33 views
1

用于SFML的documentation指出您可以组合基元来创建顶点数组。我认为他们所指的是多个Triangles可以分组为TriangleFanTriangleStrip组合SFML顶点数组中的基元

我想知道是否有办法在单个顶点数组中组合两个现有的基元类型。例如,我可以定义一堆顶点作为TriangleFan,然后切换到LineStrip?或者这将需要两个单独的数组?

回答

2

不,你只能在每个顶点数组中使用一种基本类型。

使用以下绘图函数,理论上可以使用一个数组/矢量(不是sf::VertexArray),并提供不同的偏移量和大小以使用不同的基本类型绘制数组的不同部分,但这与使用两个不同的数组以及因此您需要问自己将这些顶点混合在一起时获得的增益是多少?

void draw(const Vertex *vertices, std::size_t vertexCount, PrimitiveType type, const RenderStates &states=RenderStates::Default)