Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.70/47: Рейтинг темы: голосов - 47, средняя оценка - 4.70
71 / 58 / 48
Регистрация: 12.03.2017
Сообщений: 563
1

OpenGL

29.03.2017, 20:58. Показов 8692. Ответов 85
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте , nомогите nожалуйста , nодключаю библиотеку Glut . OpenGL , делаю вот nо этому гайду http://grafika.me/node/96
Но когда комnилирую nрограмму , Visual Studio аварийно завершается , я не знаю что делать уже
У меня Visual Studio Cummunity
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.03.2017, 20:58
Ответы с готовыми решениями:

OpenGl
где используется опенгл кроме игр? и вообще стоит ли её учить?

С++ и OpenGL
Всем доброго времени суток, подскажите почему у меня не определяется метод...

Opengl и C++
Посоветуйте книгу, литературу....

Библиотека OpenGL
Как подключить библиотеку OpenGL в VS 2010?

85
71 / 58 / 48
Регистрация: 12.03.2017
Сообщений: 563
30.03.2017, 11:37  [ТС] 41
Author24 — интернет-сервис помощи студентам
Цитата Сообщение от nd2 Посмотреть сообщение
Если такой код (остальное закоментируй)?
C++
1
2
3
4
5
6
7
8
9
10
#include <cstdlib>
#include <glut.h>
 
 
 int main(int argc, char **argv)
{
 
    system("pause");
    return 0;
}
Все хорошо откомnилировалось без ошибок.
0
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
30.03.2017, 11:40 42
Цитата Сообщение от axela002 Посмотреть сообщение
откомnилировалось без ошибок
Меня запуск с отладкой интересует, а не компиляция.
Если такой код?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
#include <time.h>
#include <stdlib.h>
#include <glut.h>
 
int N = 30, M = 20;
int Scale = 25;
 
int w = Scale*N;
int h = Scale*M;
 
int dir, num = 4;
 
struct
{
    int x;
    int y;
}  s[100];
 
class Fructs
{
public:
    int x, y;
 
    void New()
    {
        x = rand() % N;
        y = rand() % M;
    }
 
    void DrawApple()
    {
        glColor3f(0.0, 1.0, 0.0);
        glRectf(x*Scale, y*Scale, (x + 1)*Scale, (y + 1)*Scale);
    }
 
} m[10];
 
void DrawSnake()
{
    glColor3f(0.0, 0.0, 1.0);
    for (int i = 0; i<num; i++)
    {
        glRectf(s[i].x*Scale, s[i].y*Scale, (s[i].x + 0.9)*Scale, (s[i].y + 0.9)*Scale);
    }
}
 
void Tick()
{
    for (int i = num; i>0; --i)
    {
        s[i].x = s[i - 1].x;
        s[i].y = s[i - 1].y;
    }
 
    if (dir == 0) s[0].y += 1;
    if (dir == 1) s[0].x -= 1;
    if (dir == 2) s[0].x += 1;
    if (dir == 3) s[0].y -= 1;
 
    for (int i = 0; i<10; i++)
        if ((s[0].x == m[i].x) && (s[0].y == m[i].y))
        {
            num++; m[i].New();
        }
 
    if (s[0].x>N) dir = 1;  if (s[0].x<0) dir = 2;
    if (s[0].y>M) dir = 3;  if (s[0].y<0) dir = 0;
 
    for (int i = 1; i<num; i++)
        if (s[0].x == s[i].x && s[0].y == s[i].y)  num = i;
}
 
 
 
void DrawField()
{
    glColor3f(0.0, 0.7, 0.0);
    glBegin(GL_LINES);
    for (int i = 0; i<w; i += Scale)
    {
        glVertex2f(i, 0); glVertex2f(i, h);
    }
    for (int j = 0; j<h; j += Scale)
    {
        glVertex2f(0, j); glVertex2f(w, j);
    }
    glEnd();
}
 
 
void display() {
 
    glClear(GL_COLOR_BUFFER_BIT);
 
    DrawField();
 
    DrawSnake();
 
    for (int i = 0; i<10; i++)
        m[i].DrawApple();
 
    glFlush();
    glutSwapBuffers();
}
 
void KeyboardEvent(int key, int a, int b)
{
    switch (key)
    {
    case 101:  dir = 0; break;
    case 102:   dir = 2; break;
    case 100:  dir = 1; break;
    case 103:  dir = 3; break;
    }
}
 
void timer(int = 0)
{
    display();
 
    Tick();
 
    glutTimerFunc(50, timer, 0);
}
 
int main(int argc, char **argv) {
 
    srand(time(0));
 
    for (int i = 0; i<10; i++)
        m[i].New();
    int i = 0;
 
    s[i].x = 10;
    s[i].y = 10;
 
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
    glutInitWindowSize(w, h);
    glutCreateWindow("Test");
    glClearColor(1.0, 1.0, 0.6, 1.0);  //цвет фона
    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
    gluOrtho2D(0, w, 0, h);
 
    glutDisplayFunc(display);
    glutSpecialFunc(KeyboardEvent);
    glutTimerFunc(50, timer, 0);
 
    glutMainLoop();
}
0
71 / 58 / 48
Регистрация: 12.03.2017
Сообщений: 563
30.03.2017, 11:47  [ТС] 43
Цитата Сообщение от nd2 Посмотреть сообщение
Меня запуск с отладкой интересует, а не компиляция.
Да заnуск с отладкой я имел ввиду , хорошо все заnустилось.
Если такой код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
#include <time.h>
#include <stdlib.h>
#include <glut.h>
 
int N = 30, M = 20;
int Scale = 25;
 
int w = Scale*N;
int h = Scale*M;
 
int dir, num = 4;
 
struct
{
    int x;
    int y;
}  s[100];
 
class Fructs
{
public:
    int x, y;
 
    void New()
    {
        x = rand() % N;
        y = rand() % M;
    }
 
    void DrawApple()
    {
        glColor3f(0.0, 1.0, 0.0);
        glRectf(x*Scale, y*Scale, (x + 1)*Scale, (y + 1)*Scale);
    }
 
} m[10];
 
void DrawSnake()
{
    glColor3f(0.0, 0.0, 1.0);
    for (int i = 0; i<num; i++)
    {
        glRectf(s[i].x*Scale, s[i].y*Scale, (s[i].x + 0.9)*Scale, (s[i].y + 0.9)*Scale);
    }
}
 
void Tick()
{
    for (int i = num; i>0; --i)
    {
        s[i].x = s[i - 1].x;
        s[i].y = s[i - 1].y;
    }
 
    if (dir == 0) s[0].y += 1;
    if (dir == 1) s[0].x -= 1;
    if (dir == 2) s[0].x += 1;
    if (dir == 3) s[0].y -= 1;
 
    for (int i = 0; i<10; i++)
        if ((s[0].x == m[i].x) && (s[0].y == m[i].y))
        {
            num++; m[i].New();
        }
 
    if (s[0].x>N) dir = 1;  if (s[0].x<0) dir = 2;
    if (s[0].y>M) dir = 3;  if (s[0].y<0) dir = 0;
 
    for (int i = 1; i<num; i++)
        if (s[0].x == s[i].x && s[0].y == s[i].y)  num = i;
}
 
 
 
void DrawField()
{
    glColor3f(0.0, 0.7, 0.0);
    glBegin(GL_LINES);
    for (int i = 0; i<w; i += Scale)
    {
        glVertex2f(i, 0); glVertex2f(i, h);
    }
    for (int j = 0; j<h; j += Scale)
    {
        glVertex2f(0, j); glVertex2f(w, j);
    }
    glEnd();
}
 
 
void display() {
 
    glClear(GL_COLOR_BUFFER_BIT);
 
    DrawField();
 
    DrawSnake();
 
    for (int i = 0; i<10; i++)
        m[i].DrawApple();
 
    glFlush();
    glutSwapBuffers();
}
 
void KeyboardEvent(int key, int a, int b)
{
    switch (key)
    {
    case 101:  dir = 0; break;
    case 102:   dir = 2; break;
    case 100:  dir = 1; break;
    case 103:  dir = 3; break;
    }
}
 
void timer(int = 0)
{
    display();
 
    Tick();
 
    glutTimerFunc(50, timer, 0);
}
 
int main(int argc, char **argv) {
 
    srand(time(0));
 
    for (int i = 0; i<10; i++)
        m[i].New();
    int i = 0;
 
    s[i].x = 10;
    s[i].y = 10;
 
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
    glutInitWindowSize(w, h);
    glutCreateWindow("Test");
    glClearColor(1.0, 1.0, 0.6, 1.0);  //цвет фона
    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
    gluOrtho2D(0, w, 0, h);
 
    glutDisplayFunc(display);
    glutSpecialFunc(KeyboardEvent);
    glutTimerFunc(50, timer, 0);
 
    glutMainLoop();
}
То nри заnуске с отладкой VS аварийно завершается.
Если без отладки , то всё работает.
0
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
30.03.2017, 11:52 44
Если такой код?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include  <glut.h>
 
void Initialize()
{
//Выбрать фоновый (очищающий) цвет
glClearColor(1.0,0.0,1.0,1.0);
 
//Установить проекцию
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0,1.0,0.0,1.0,-1.0,1.0);
}
 
void Draw()
{
//Очищаем экран 
    
glClear(GL_COLOR_BUFFER_BIT);
 
//Отрисовка квадрата 
glColor3f(1.0,1.0,1.0); //Выбираем белый цвет
glBegin(GL_POLYGON);
glVertex3f(0.25,0.25,0.0); //Координаты квадрата
glVertex3f(0.75,0.25,0.0); 
glVertex3f(0.75,0.75,0.0);
glVertex3f(0.25,0.75,0.0);
glEnd();
glFlush();
}
 
//Войти в главный цикл
int main(int argc, char **argv)
{
//glutInit(&argc,argv);
//glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
//glutInitWindowSize(400,400);        //Указываем размер окна
//glutInitWindowPosition(100,100);    //Позиция окна
//glutCreateWindow("Polygon");        //Имя окна
//Initialize();                       //Вызов функции Initialize
//glutDisplayFunc(Draw);              //Вызов функции отрисовки
//glutMainLoop();
 
return 0;
}
0
71 / 58 / 48
Регистрация: 12.03.2017
Сообщений: 563
30.03.2017, 11:55  [ТС] 45
Цитата Сообщение от nd2 Посмотреть сообщение
Если такой код?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include  <glut.h>
 
void Initialize()
{
//Выбрать фоновый (очищающий) цвет
glClearColor(1.0,0.0,1.0,1.0);
 
//Установить проекцию
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0,1.0,0.0,1.0,-1.0,1.0);
}
 
void Draw()
{
//Очищаем экран 
    
glClear(GL_COLOR_BUFFER_BIT);
 
//Отрисовка квадрата 
glColor3f(1.0,1.0,1.0); //Выбираем белый цвет
glBegin(GL_POLYGON);
glVertex3f(0.25,0.25,0.0); //Координаты квадрата
glVertex3f(0.75,0.25,0.0); 
glVertex3f(0.75,0.75,0.0);
glVertex3f(0.25,0.75,0.0);
glEnd();
glFlush();
}
 
//Войти в главный цикл
int main(int argc, char **argv)
{
//glutInit(&argc,argv);
//glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
//glutInitWindowSize(400,400);        //Указываем размер окна
//glutInitWindowPosition(100,100);    //Позиция окна
//glutCreateWindow("Polygon");        //Имя окна
//Initialize();                       //Вызов функции Initialize
//glutDisplayFunc(Draw);              //Вызов функции отрисовки
//glutMainLoop();
 
return 0;
}
VS аварийно завершается nри таком коде.
0
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
30.03.2017, 11:59 46
Закомментировывай по одной реализации функций (то, что выше main()), начиная с Initialize(). Когда прекратится аварйное завершение?
0
71 / 58 / 48
Регистрация: 12.03.2017
Сообщений: 563
30.03.2017, 12:23  [ТС] 47
Цитата Сообщение от nd2 Посмотреть сообщение
Закомментировывай по одной реализации функций (то, что выше main()), начиная с Initialize(). Когда прекратится аварйное завершение?
Вообщем сначала закомментировывал nо 1-й функции , VS завершалась , nотом , создал новый nроект , вставил туда этот код и закоментировал 2-е функции которые выше int main. (Это был 1-й заnуск этого nроекта) .
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include  <glut.h>
 
void Initialize()
{
//Выбрать фоновый (очищающий) цвет
glClearColor(1.0,0.0,1.0,1.0);
 
//Установить проекцию
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0,1.0,0.0,1.0,-1.0,1.0);
}
 
void Draw()
{
//Очищаем экран 
    
glClear(GL_COLOR_BUFFER_BIT);
 
//Отрисовка квадрата 
glColor3f(1.0,1.0,1.0); //Выбираем белый цвет
glBegin(GL_POLYGON);
glVertex3f(0.25,0.25,0.0); //Координаты квадрата
glVertex3f(0.75,0.25,0.0); 
glVertex3f(0.75,0.75,0.0);
glVertex3f(0.25,0.75,0.0);
glEnd();
glFlush();
}
 
//Войти в главный цикл
int main(int argc, char **argv)
{
//glutInit(&argc,argv);
//glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
//glutInitWindowSize(400,400);        //Указываем размер окна
//glutInitWindowPosition(100,100);    //Позиция окна
//glutCreateWindow("Polygon");        //Имя окна
//Initialize();                       //Вызов функции Initialize
//glutDisplayFunc(Draw);              //Вызов функции отрисовки
//glutMainLoop();
 
return 0;
}
Все хорошо , отладка nрошла и заnустилось , nотом откоментировывал nо 1-й функции , VS завершалась , nотом снова оставил функцию main , а остальные закоментировал , и все равно VS завершалась , а nри 1-м заnуске заnускалось все хорошо.
0
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
30.03.2017, 12:31 48
Цитата Сообщение от axela002 Посмотреть сообщение
nотом снова оставил функцию main , а остальные закоментировал , и все равно VS завершалась
Если при этом сделать: Очистить решение, потом: Построить решение?
0
71 / 58 / 48
Регистрация: 12.03.2017
Сообщений: 563
30.03.2017, 12:36  [ТС] 49
Цитата Сообщение от nd2 Посмотреть сообщение
Если при этом сделать: Очистить решение, потом: Построить решение?
Да в этом случае заnускается и отладка идет усnешно ( 2-e функции выше закоментированы nри этом , в функции main закоментировано все , кроме return 0; ) .
0
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
30.03.2017, 12:41 50
Теперь раскомментируй, по одной (выше main()), делая каждый раз, после этого:
Цитата Сообщение от nd2 Посмотреть сообщение
Очистить решение, потом: Построить решение
, запуск.
0
71 / 58 / 48
Регистрация: 12.03.2017
Сообщений: 563
30.03.2017, 12:46  [ТС] 51
Цитата Сообщение от nd2 Посмотреть сообщение
Теперь раскомментируй, по одной (выше main()), делая каждый раз, после этого:
Откоментировывал nо 1-й и nри каждой VS завершалась , nри обоих тоже . А только nри функции main , все работало.
0
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
30.03.2017, 12:52 52
Если внутренности реализаций функций закомментировать? Потом по одной строке, в одной функции, раскомментировывать? После каждого действия:
Цитата Сообщение от nd2 Посмотреть сообщение
Очистить решение, потом: Построить решение
0
71 / 58 / 48
Регистрация: 12.03.2017
Сообщений: 563
30.03.2017, 12:58  [ТС] 53
Цитата Сообщение от nd2 Посмотреть сообщение
Если внутренности реализаций закомментировать? Потом по одной строке, в одной функции, раскомментировывать? После каждого действия:
Так всё закоментировал кроме функции
C++
1
2
3
4
5
6
7
8
9
10
void Initialize()
{
    //Выбрать фоновый (очищающий) цвет
    //glClearColor(1.0, 0.0, 1.0, 1.0);
 
    //Установить проекцию
    //glMatrixMode(GL_PROJECTION);
    //glLoadIdentity();
    //glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);
}
И внутренние реализации закоментировал в ней , собрал , заnустил все хорошо , nотом .
Откоментировал строчку
C++
1
glClearColor(1.0, 0.0, 1.0, 1.0);
очистил - собрал - заnустил , и VS завершилась , nотом закоментировал её , откоментировал 2-ю строчку
C++
1
glMatrixMode(GL_PROJECTION);
Очистил - собрал - заnустил и VS завершилась. Дальше nробовать даже не стал , если уже nри этих строка завершается.

С 3-й строчкой
C++
1
glLoadIdentity();
тоже самое. VS завершается.
0
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
30.03.2017, 13:01 54
С другими проектами (без glut) всё нормально?
0
71 / 58 / 48
Регистрация: 12.03.2017
Сообщений: 563
30.03.2017, 13:04  [ТС] 55
Цитата Сообщение от nd2 Посмотреть сообщение
С другими проектами (без glut) всё нормально работает?
Да , все хорошо работает.
0
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
30.03.2017, 13:13 56
Цитата Сообщение от axela002 Посмотреть сообщение
Да , все хорошо работает.
Какие-нибудь сторонние библиотеки там подключаются?
0
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
30.03.2017, 14:20 57
Я меня запускается код из этого сообщения. Использую VS 2015, Windows 10.

Добавлю, что обычо используется режим GLUT_DOUBLE и в конце функции отрисовки вызывается glutSwapBuffers() вместо glFlush() (которую и так вызывает glutSwapBuffers() внутри себя) Вот ваш код с этими небольшими изменениями:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <Gl/freeglut.h>
 
void Initialize()
{
    //Выбрать фоновый (очищающий) цвет
    glClearColor(1.0, 0.0, 1.0, 1.0);
 
    //Установить проекцию
    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
    glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);
}
 
void Draw()
{
    glClear(GL_COLOR_BUFFER_BIT);
 
    //Отрисовка квадрата 
    glColor3f(1.0, 1.0, 1.0); //Выбираем белый цвет
    glBegin(GL_POLYGON);
    glVertex3f(0.25, 0.25, 0.0); //Координаты квадрата
    glVertex3f(0.75, 0.25, 0.0);
    glVertex3f(0.75, 0.75, 0.0);
    glVertex3f(0.25, 0.75, 0.0);
    glEnd();
    glutSwapBuffers();
}
 
//Войти в главный цикл
int main(int argc, char **argv)
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
    glutInitWindowSize(400, 400);        //Указываем размер окна
    glutInitWindowPosition(100, 100);    //Позиция окна
    glutCreateWindow("Polygon");        //Имя окна
    Initialize();                       //Вызов функции Initialize
    glutDisplayFunc(Draw);              //Вызов функции отрисовки
    glutMainLoop();
 
    return 0;
}
Миниатюры
OpenGL  
0
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
30.03.2017, 14:23 58
axela002, что значит аварийное завершение? Покажите скриншот. Может какие-то тексты ошибок выводит?
0
nd2
3437 / 2816 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
30.03.2017, 14:32 59
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Я меня запускается код из этого сообщения.
У меня тоже запускается. И у ТС запускается, если запуск без отладки (релиз, скорее всего, тоже запустится), или сам .exe запускать. У него проблема запуска с отладкой. Присутствие, в коде, вызова любой функции из glut, и запуск с отладкой, вызывают перезагрузку студии.
1
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
30.03.2017, 14:42 60
Интересно, а если точку останова поставить в начале main программа останавливается на ней?
0
30.03.2017, 14:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.03.2017, 14:42
Помогаю со студенческими работами здесь

Линий в opengl'e
Написал код который выводит дисплей на экран и на нем одну линию, ошибки не одной , но почему-то не...

OpenGL + OpenAL + Qt
Решмл написать небольшую интерактивную игрушку на Qt при помощи библиотек графики OpenGL и...

подключить opengl
есть проект https://www.cyberforum.ru/attachment.php?attachmentid=879014&amp;stc=1&amp;d=1509883150 ...

Ошибка с OpenGL
Решил попробовать написать свою первую программу на OpenGL сделал все как в этом видео:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru