|
1 A) ]% x. C0 g, ]
1 E- J9 V. w1 L1 }
注意,这个示例的图像数据,取自《OpenGL超级宝典》,笑脸部分数据是倒置的.
: s: i$ L/ U' ~( [4 o1 O IDraw部分代码如下:
+ d0 `2 f$ x8 r) J! g0 C8 a! t+ F& K* N. O$ j& z
int i;
3 \5 G) j- K) |5 j# D! s+ f* V static GLubyte smiley[] = /* 16x16 笑验图案 */5 i8 t- p3 R* d" C1 S3 Z
{
( G: \7 H$ Z/ [% R 0x03, 0xc0, 0, 0, /* **** */8 d5 a# E# `* b4 n; V
0x0f, 0xf0, 0, 0, /* ******** */' [ E% C0 g* v, n
0x1e, 0x78, 0, 0, /* **** **** */
0 H# l; o( G! j: t- j( a. D% c: Y 0x39, 0x9c, 0, 0, /* *** ** *** */, \8 Y+ F! E6 m0 i* E1 V
0x77, 0xee, 0, 0, /* *** ****** *** */1 s8 |4 k4 Y# c% Q1 j0 O
0x6f, 0xf6, 0, 0, /* ** ******** ** */
! m( X2 J; U* ^5 H" X 0xff, 0xff, 0, 0, /* **************** */7 U( \6 E7 X/ @1 f$ F
0xff, 0xff, 0, 0, /* **************** */$ V( l, \8 f1 Z+ j- @6 M. b
0xff, 0xff, 0, 0, /* **************** */ w+ {$ u% ^ c9 c; B# A
0xff, 0xff, 0, 0, /* **************** */
" H! g* m$ C5 \( @& d* N. q 0x73, 0xce, 0, 0, /* *** **** *** */: x8 w( H8 V+ B* i& B9 a; e" a. r8 o$ I
0x73, 0xce, 0, 0, /* *** **** *** */( T" U. e1 V; L1 H' d
0x3f, 0xfc, 0, 0, /* ************ */
0 s2 n X; V! U" U, ^8 g$ O4 D. } 0x1f, 0xf8, 0, 0, /* ********** */3 u- y8 X0 N8 z8 o
0x0f, 0xf0, 0, 0, /* ******** */$ g0 B0 F: L9 y( M$ d
0x03, 0xc0, 0, 0 /* **** */
7 W/ k' U0 ^5 `8 j. J! J };
/ C7 Q4 h& z) ~+ f9 `1 _( O/ b9 `1 } glColor3f(1.0, 0.0, 0.0);) J1 ^" n3 ~ w% b5 r2 i ], t
for (i = 0; i < 100; i ++)
" h# V1 @- A9 _$ C {
( Y; G* R5 f8 ~& N# j //定位位置% u3 c1 Z, a! S, ^* @0 H0 X
glRasterPos2i(rand() % 640, rand() % 480);
! F6 |$ s3 \5 Q/ v/ j' u0 }, C //从上面给定的位置开始绘图,Bitmap采用smiley的数据绘制
7 e& K+ ^( }+ N0 f ? glBitmap(16, 16, 8, 8, 0, 0, smiley);. @$ U9 a5 J! l7 Y
}
- I- j! @" B, X3 J* s" Q
2 ~5 |% m. ~7 |7 A# u5 h5 y
) z! o8 S f2 P6 r# @' u[此贴子已经被作者于2004-11-19 11:35:35编辑过] |