Как рисовать закругленные и квадратные точки в OpenGL - PullRequest
0 голосов
/ 03 января 2019

Я использую приведенный ниже код для рисования округленных точек,

glEnable(GL_POINT_SMOOTH);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);

, но мне нужно нарисовать две разные точки, одну квадратную и одну округленную.

Пример, только при использовании:

glEnable(GL_POINTS)

я знаю, что квадратная точка нарисована: ■

и с

glEnable(GL_POINT_SMOOTH);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);

я знаю, что закругленная точка нарисована: ●

У меня есть 2 метода для рисования разных предметов.Мой метод для квадратной точки:

MyClass::squarePoint()
{
    glPointSize(10.0);
    glEnable(GL_PROGRAM_POINT_SIZE);
    glBegin(GL_POINTS);
    glEnd();
}

и мой метод для округленной точки:

MyClass::roundedPoint()
{
    glPointSize(10.0);
    glEnable(GL_PROGRAM_POINT_SIZE);
    glEnable(GL_POINT_SMOOTH);
    glEnable(GL_BLEND);
    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
    glBegin(GL_POINTS);
    glEnd();
}

и мой метод paintGL на всякий случай:

MyClass::paintGL()
{
    this->squarePoint();
    this->roundedPoint();
}

Мои вопросыКак я могу предотвратить преобразование квадратной точки в скругленную точку, когда я рисую скругленную точку?

Моя проблема:

Gif Example

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...