From QB64 Phoenix Edition Wiki
Jump to navigation
Jump to search
OpenGL | C/C++ | QB64
------------+------------------+----------------------
GLenum | unsigned int | _UNSIGNED LONG
GLboolean | unsigned char | _UNSIGNED _BYTE
GLbitfield | unsigned int | _UNSIGNED LONG
GLbyte | signed char | _BYTE
GLshort | short | INTEGER
GLint | int | LONG
GLsizei | int | LONG
GLubyte | unsigned char | _UNSIGNED _BYTE
GLushort | unsigned short | _UNSIGNED INTEGER
GLuint | unsigned int | _UNSIGNED LONG
GLfloat | float | SINGLE
GLclampf | float | SINGLE
GLdouble | double | DOUBLE
GLclampd | double | DOUBLE
GLvoid (1)| void | _OFFSET(any fixed lenght string or _BYTE
array element)
Note: If a parameter has an asterisk (*) in front, then it's a pointer to
the designated OpenGL variable type, rather than a value of that type.
Those must be passed using the _OFFSET(...) notation.
E.g. GLuint *anyParam is actually the offset of a _UNSIGNED LONG (~&)
variable or array, which must be passed as _OFFSET(anyVar~&) or
_OFFSET(anyArr~&()) respectively.
(1) This type is regularly only used for pointers (with asterisk (*)) to
any byte sized memory data, hence _BYTE or fixed length strings.
|