Как сделать мягкие линии в OpenGL?

311
08 октября 2017, 21:49

При отрисовке линий у них явно видно как они соскакивают, как рисовать нормально? Чтобы не было острых углов и линии были плавные?

    float[] pointers = new float[4] {
        0, 0,
        300, 300
    };

    private void OpenGLControl_OpenGLDraw(object sender, OpenGLEventArgs args) {
        OpenGL gl = args.OpenGL;
        gl.Clear(OpenGL.GL_COLOR_BUFFER_BIT | OpenGL.GL_DEPTH_BUFFER_BIT);

        gl.PushMatrix();
        gl.EnableClientState(OpenGL.GL_VERTEX_ARRAY);
        gl.VertexPointer(2, 0, pointers);
        gl.DrawArrays(OpenGL.GL_LINES, 0, 2);
        gl.DisableClientState(OpenGL.GL_VERTEX_ARRAY);
        gl.End();
        gl.PopMatrix();
    }


    private void OpenGLControl_OpenGLInitialized(object sender, OpenGLEventArgs args) {
        OpenGL gl = args.OpenGL;
        gl.ClearColor(0f, 0f, 0f, 1.0f);
    }

    private void OpenGLControl_Resized(object sender, OpenGLEventArgs args) {
        OpenGL gl = args.OpenGL;
        // Создаем ортографическую проекцию
        gl.MatrixMode(OpenGL.GL_PROJECTION);
        gl.LoadIdentity();
        gl.Ortho(0, ActualWidth, ActualHeight, 0, -10, 10);
        // Возвращаемся к модельной проекции
        gl.MatrixMode(OpenGL.GL_MODELVIEW); 
    }

P.S. Мой метод (через VertexPointer) нормален для 2D графики? c# потянет такое? Планируется что надо будет отрисовывать десятки тысяч примитивов

READ ALSO
Проблемы с использованием async, await

Проблемы с использованием async, await

Здравствуйте, форумчане)) У меня такой вопрос: написал бота для telegram, который извлекает определенную информацию из фотографии и заносит ее в базу...

347
Имеет ли смысл мой (апплет?) для окон?

Имеет ли смысл мой (апплет?) для окон?

Всем доброго времени суток! Недавно написал небольшой (я правда не знаю, как это классифицировать) на js

242