ポリラインのポイント (x, y) の配列があります。毎回、3 つの隣接ポイントを処理し、2 つの出力ポイントを生成する必要があります。
たとえば、次のようなものです。
void someFunc(float x0, float y0, float x1, float y1, float x2, float y2, float *pXout1, float *pYout1, float *pXout2, float *pYout2)
{
*xout1 = x1 - 1;
*xout2 = x1 + 1;
*yout1 = MIN(y0, y2);
*yout2 = MAX(y0, y2);
}
したがって、頂点シェーダーに実装する必要がある 2 つの問題があります。
1)一度に複数の隣接点を入力する方法は? 2)一度に複数のポイントを出力する方法は?