GlMatrixMode: Difference between revisions
Jump to navigation
Jump to search
Navigation:
Main Page with Articles and Tutorials
Keyword Reference - Alphabetical
Keyword Reference - By usage
Report a broken link
m (Protected "GlMatrixMode" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))) |
No edit summary |
||
Line 15: | Line 15: | ||
{{PageDescription}} | {{PageDescription}} | ||
* OpenGL's documentation is available in several places, so we won't reproduce it here for another time. | * OpenGL's documentation is available in several places, so we won't reproduce it here for another time. | ||
* The full description for this command can be found at [https:// | * The full description for this command can be found at [https://learn.microsoft.com/en-us/windows/win32/opengl/glmatrixmode Microsoft Docs] and is also valid for QB64 usage. | ||
{{PageSeeAlso}} | {{PageSeeAlso}} | ||
* [[_GL|SUB _GL]] | * [[_GL|SUB _GL]] | ||
* [[_glBegin]], [[_glEnd]], [https:// | * [[_glBegin]], [[_glEnd]], [https://learn.microsoft.com/en-us/windows/win32/opengl/glloadmatrix _glLoadMatrix], [[_glPushMatrix]] | ||
Revision as of 18:03, 17 September 2022
The _glMatrixMode statement specifies which matrix is the current matrix.
Syntax
- _glMatrixMode GLenum mode
Parameters
- OpenGL is using its own set of variable types to describe its command parameters.
- Use the following table to find the respective QB64 Variable Types.
Table 2: Relations between the OpenGL variable types vs. C/C++ and QB64. ┌──────────────┬────────────────┬──────────────────────────────────────────┐ │ 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. |
Description
- OpenGL's documentation is available in several places, so we won't reproduce it here for another time.
- The full description for this command can be found at Microsoft Docs and is also valid for QB64 usage.
See also