三、OPENGL 变量和函数的约定
1、OPENGL 的库约定
它共三个库:基本库、实用库、辅助库。在 DELPHI 中,基本库由 OpenGL 单元实现,在 Windows 环境中,一般不
使用辅助库。
2、OPENGL 常数约定
OPENGL 常数均使用大写字母,以"GL"开头,词汇之间使用下划线分隔,如:GL_LINES,表示使用基本库绘制直线。
3、OPENGL 函数的命名约定
A 第一部分以 gl 或 wgl 开头,如 glColor3f 中的 gl。
B 第二部分是用英文表示的函数功能,单词的首字母大写出。
C 第三部分是数字,表示函数的参数。
D 第四部分是小写字母,表示函数的类型。
b 9 位整数
s 16 位整数
i 32 位整数
f 32 位浮点数
d 64 位浮点数
ub 9 位无符号整数
例:glVertex2f(37,40); {两个 32 位的浮点数作参数}
glVertex3d(37,40,5); {三个 64 位的浮点数作参数}
p[1..3]:array of glFloat;
glVertes3fv(p); {3f 表示三个浮点数,v 表示调用一个数组作为顶点坐标输入}
四、OPENGL 的初始化
1、PIXELFORMATDESCRIPTOR 结构
主要描述像素点的性质,如像素的颜色模式和红、绿、蓝颜色构成方式等。
tagPIXELFORMATDESCRIPTOR = packed record
nSize: Word;
nVersion: Word;
dwFlags: DWORD;
iPixelType: Byte;
cColorBits: Byte;
cRedBits: Byte;
cRedShift: Byte;
cGreenBits: Byte;
cGreenShift: Byte;
cBlueBits: Byte;
cBlueShift: Byte;
cAlphaBits: Byte;
cAlphaShift: Byte;
cAccumBits: Byte;
cAccumRedBits: Byte;
cAccumGreenBits: Byte;
cAccumBlueBits: Byte;
cAccumAlphaBits: Byte;
cDepthBits: Byte;
cStencilBits: Byte;
cAuxBuffers: Byte;
1
- 1
- 2
前往页