Пиксели рендеринга белого цвета (OpenGL)

Я пытаюсь получить не шейдерное освещение на пиксель на фоне моего окна. Предполагается, что он отображается полностью белым в верхнем левом углу и полностью черным в нижнем левом углу, но вместо этого он белый с черными краями. По какой-то причине все пиксели, кроме крайнего правого и дальнего нижнего края, полностью белые (края черные)). Почему это не рендеринг должным образом?

    glViewport(0, 0, Display.getWidth(), Display.getHeight());

    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
    glOrtho(0, 2000, 2000, 0, 1, -1);
    glMatrixMode(GL_MODELVIEW);

    if (lighting != 0)
        glDeleteLists(lighting, 1);

    lighting = glGenLists(1);

    glNewList(lighting, GL_COMPILE);

    glDisable(GL_TEXTURE_2D);

    glBegin(GL_POINTS);
    for (int x = 1; x <= 2000; x++)
    {
        for (int y = 1; y <= 2000; y++)
        {
            double dist = new Point(x, y).distance(new Point(0, 0));
            double brightness = 1 - (1 / 2000 * dist); //I tried just "1 / 2000 & dist" instead, but that just renders black everywhere

            glColor3d(brightness, brightness, brightness);

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

    glEndList();

0 ответов

Другие вопросы по тегам