- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 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
void DrawScene( void )
{
glPushMatrix();
glClearColor(0.0F, 0.0F, 0.0F, 1.0F);
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
glEnable( GL_DEPTH_TEST );
glLoadIdentity();
glTranslated( 0.0, 0.0, -2.0 );
glMultMatrixd( RotMatrix );
glColor3f( 0.0, 0.0, 1.0 );
glBegin( GL_POLYGON );
glVertex3d( 0.0, 0.0, 0.0 );
glVertex3d( 0.0, 0.5, 0.0 );
glVertex3d( 0.0, 0.0, 0.5 );
glEnd();
glColor3f( 0.0, 1.0, 0.0 );
glBegin( GL_POLYGON );
glVertex3d( 0.0, 0.0, 0.0 );
glVertex3d( 0.0, 0.0, -0.5 );
glVertex3d( 0.0, -0.5, 0.0 );
glEnd();
glColor3f( 1.0, 0.0, 0.0 );
glBegin( GL_POLYGON );
glVertex3d( 0.0, 0.0, 0.0 );
glVertex3d( 0.0, 0.5, 0.0 );
glVertex3d( 0.0, 0.0, -0.5 );
glEnd();
glColor3f( 0.0, 0.5, 0.5 );
glBegin( GL_POLYGON );
glVertex3d( 0.0, 0.0, 0.0 );
glVertex3d( 0.0, 0.0, 0.5 );
glVertex3d( 0.0, -0.5, 0.0 );
glEnd();
glColor3f( 0.5, 0.0, 0.5 );
glBegin( GL_POLYGON );
glVertex3d( 0.0, 0.0, 0.0 );
glVertex3d( 0.5, 0.0, 0.0 );
glVertex3d( 0.0, 0.0, 0.5 );
glEnd();
glColor3f( 0.5, 0.5, 0.0 );
glBegin( GL_POLYGON );
glVertex3d( 0.0, 0.0, 0.0 );
glVertex3d( -0.5, 0.0, 0.0 );
glVertex3d( 0.0, 0.0, -0.5 );
glEnd();
glColor3f( 0.75, 0.25, 0.5 );
glBegin( GL_POLYGON );
glVertex3d( 0.0, 0.0, 0.0 );
glVertex3d( -0.5, 0.0, 0.0 );
glVertex3d( 0.0, 0.0, 0.5 );
glEnd();
glColor3f( 0.5, 0.25, 0.75 );
glBegin( GL_POLYGON );
glVertex3d( 0.0, 0.0, 0.0 );
glVertex3d( 0.5, 0.0, 0.0 );
glVertex3d( 0.0, 0.0, -0.5 );
glEnd();
glColor3f( 0.25, 0.75, 0.5 );
glBegin( GL_POLYGON );
glVertex3d( 0.0, 0.0, 0.0 );
glVertex3d( 0.5, 0.0, 0.0 );
glVertex3d( 0.0, 0.5, 0.0 );
glEnd();
glColor3f( 0.5, 0.75, 0.25 );
glBegin( GL_POLYGON );
glVertex3d( 0.0, 0.0, 0.0 );
glVertex3d( 0.0, -0.5, 0.0 );
glVertex3d( -0.5, 0.0, 0.0 );
glEnd();
glColor3f( 0.25, 0.5, 0.75 );
glBegin( GL_POLYGON );
glVertex3d( 0.0, 0.0, 0.0 );
glVertex3d( -0.5, 0.0, 0.0 );
glVertex3d( 0.0, 0.5, 0.0 );
glEnd();
glColor3f( 0.75, 0.5, 0.25 );
glBegin( GL_POLYGON );
glVertex3d( 0.0, 0.0, 0.0 );
glVertex3d( 0.5, 0.0, 0.0 );
glVertex3d( 0.0, -0.5, 0.0 );
glEnd();
glDisable( GL_DEPTH_TEST );
glFlush();
glPopMatrix();
}
guest 04.05.2012 11:29 # +2
TarasB 04.05.2012 11:47 # +2
KusokGovna 04.05.2012 13:06 # 0
TarasB 04.05.2012 13:34 # 0
Правда, мне вот от glBegin/glEnd тупо не уйти, потому что у меня модели слишком заскриптованы для того, чтобы их можно было представить как единый кусок константных вершин.
tirinox 04.05.2012 20:41 # +1
TarasB 05.05.2012 09:44 # 0
guest 04.05.2012 23:14 # +2
В этом случае говна нет.
absolut 04.05.2012 23:23 # +4
Lure Of Chaos 05.05.2012 11:50 # +3
guest 04.05.2012 23:51 # 0
как же быть как же быть
inkanus-gray 04.05.2012 23:52 # 0
guest 05.05.2012 02:04 # 0
guest 04.05.2012 13:14 # +3
wvxvw 04.05.2012 13:33 # 0
Steve_Brown 04.05.2012 16:07 # 0
WGH 04.05.2012 19:47 # 0
tirinox 04.05.2012 20:40 # 0
2. Убрать множество glBegin glEnd и все вставить в один блок
3. glDisable( GL_DEPTH_TEST ); - нафиг в конце перед флашем?...
4. Immediate mode (он же glBegin glVertex glEnd) - упразднен, работает медленно и поддерживается плохо и то только по доброте душевной гигантов гпу-строения. Пора бы VBO освоить...
Говна тут хватает!