Отображение текстуры на круг, созданный с помощью GL_POLYGON

Я пытаюсь сопоставить текстуру с кругом, используя GL_POLYGON , используя этот код:

void drawCircleOutline(Circle c, int textureindex)
{
    float angle, radian, x, y;       // values needed by drawCircleOutline

    glEnable(GL_TEXTURE_2D);
    glBindTexture(GL_TEXTURE_2D, textureLib[textureindex]);

    glBegin(GL_POLYGON);

    for (angle=0.0; angle<360.0; angle+=2.0)
    {
        radian = angle * (pi/180.0f);

        x = (float)cos(radian) * c.r  + c.pos.x;
        y = (float)sin(radian) * c.r  + c.pos.y;

        glTexCoord2f(x, y);
        glVertex2f(x, y);
    }

    glEnd();
    glDisable(GL_TEXTURE_2D);
}

во время работы он выглядит так.

img1

И должно выглядеть так:

img2

6
задан Community 8 February 2017 в 14:34
поделиться