Как отрисовывать по пикселям в opengl?

295
03 октября 2017, 03:00

Использую библиотеку SharpGL в WPF приложении, как можно нарисовать линию с нужными размерами и отступами в пикселях? И как сделать так, чтобы эта линия не растягивалась с изменение размеров окна?

И можно как-то с помощью Perspective делать нужный зум? Например х3 или х0.5

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.LoadIdentity(); // Сбрасываем матрицу
    gl.Translate(0.0f, 0.0f, -2.5f);
    gl.Begin(OpenGL.GL_LINES); 
    gl.Color(0.0f, 1.0f, 0.0f);

    gl.Vertex(1.0f, 1.0f);
    gl.Vertex(-1.0f, 1.0f);

    gl.End();
    gl.Flush();
}
private void OpenGLControl_Resized(object sender, OpenGLEventArgs args) {
    OpenGL gl = args.OpenGL;
    // Сброс матрицы проекции
    gl.MatrixMode(OpenGL.GL_PROJECTION);
    gl.LoadIdentity();
    // Рассчитать соотношение сторон окна
    gl.Perspective(45.0f, (float)gl.RenderContextProvider.Width / (float)gl.RenderContextProvider.Height, 0.1f, 100.0f);
    // Устанавливаем матрицу представления
    gl.MatrixMode(OpenGL.GL_MODELVIEW);
}
READ ALSO
Массив из цифр каждого разряда даного числа

Массив из цифр каждого разряда даного числа

Подскажите,пожалуйста, как сделать из числа integer массив, элементами которого будут цифры каждого разряда данного числа в C#? (Число нам нада...

358
Почему EAP не быстрее APM?

Почему EAP не быстрее APM?

Здравствуйте

244
Возможно ли отловить ошибку WinApi на C#?

Возможно ли отловить ошибку WinApi на C#?

Добрый вечер, товарищи!

318
Как отловить Ctrl+C в telnet приложении

Как отловить Ctrl+C в telnet приложении

Написал для одной задачки простенькую консольПодключаюсь по 500 порту из Putty, ввожу команду "tail" и получаю в бесконечном цикле вывод на экран...

237