这个特殊的栅格数组如何形成'F'

时间:2013-11-29 10:00:51

标签: c++ opengl

这个特殊的数组

GLubyte rasters[24] = {
   0xc0, 0x00, 0xc0, 0x00, 0xc0, 0x00, 0xc0, 0x00, 0xc0, 0x00,
   0xff, 0x00, 0xff, 0x00, 0xc0, 0x00, 0xc0, 0x00, 0xc0, 0x00,
   0xff, 0xc0, 0xff, 0xc0};

结合此代码

glBitmap (10, 12, 0.0, 0.0, 11.0, 0.0, rasters);

形成'F'我无法理解数组?

1 个答案:

答案 0 :(得分:2)

您正在绘制位图,即“位图”。

如果将这些值转换为二进制,并将它们写成16位矩阵,您将得到:

1100 0000 0000 0000
1100 0000 0000 0000
1100 0000 0000 0000
1100 0000 0000 0000
1100 0000 0000 0000
1111 1111 0000 0000
1111 1111 0000 0000
1100 0000 0000 0000
1100 0000 0000 0000
1100 0000 0000 0000 
1111 1111 1100 0000
1111 1111 1100 0000

正如你可以看到“1”形成一个F。

编辑:正如@benjymous在评论中指出的那样,F是颠倒的,因为OpenGL使用左下角作为原点。