Module: SDL2::GL
- Defined in:
- ext/sdl2_ext/gl.c,
ext/sdl2_ext/gl.c
Overview
This module provides the initialize/shutdown functions of OpenGL.
Defined Under Namespace
Classes: Context
Constant Summary collapse
- RED_SIZE =
OpenGL attribute - minimal bits of red channel in color buffer, default is 3
INT2NUM(SDL_GL_RED_SIZE)
- GREEN_SIZE =
OpenGL attribute - minimal bits of green channel in color buffer, default is 3
INT2NUM(SDL_GL_GREEN_SIZE)
- BLUE_SIZE =
OpenGL attribute - minimal bits of blue channel in color buffer, default is 2
INT2NUM(SDL_GL_BLUE_SIZE)
- ALPHA_SIZE =
OpenGL attribute - minimal bits of alpha channel in color buffer, default is 0
INT2NUM(SDL_GL_ALPHA_SIZE)
- BUFFER_SIZE =
OpenGL attribute - minimal bits of framebufer, default is 0
INT2NUM(SDL_GL_BUFFER_SIZE)
- DOUBLEBUFFER =
OpenGL attribute - whether the single buffer (0) or double buffer (1), default
is double buffer
INT2NUM(SDL_GL_DOUBLEBUFFER)
- DEPTH_SIZE =
OpenGL attribute - bits of depth buffer, default is 16
INT2NUM(SDL_GL_DEPTH_SIZE)
- STENCIL_SIZE =
OpenGL attribute - bits of stencil buffer, default is 0
INT2NUM(SDL_GL_STENCIL_SIZE)
- ACCUM_RED_SIZE =
OpenGL attribute - minimal bits of red channel in accumlation buffer,
default is 0
INT2NUM(SDL_GL_ACCUM_RED_SIZE)
- ACCUM_GREEN_SIZE =
OpenGL attribute - minimal bits of green channel in accumlation buffer,
default is 0
INT2NUM(SDL_GL_ACCUM_GREEN_SIZE)
- ACCUM_BLUE_SIZE =
OpenGL attribute - minimal bits of blue channel in accumlation buffer,
default is 0
INT2NUM(SDL_GL_ACCUM_BLUE_SIZE)
- ACCUM_ALPHA_SIZE =
OpenGL attribute - minimal bits of alpha channel in accumlation buffer,
default is 0
INT2NUM(SDL_GL_ACCUM_ALPHA_SIZE)
- STEREO =
OpenGL attribute - whether output is stereo (1) or not (0), default is 0
INT2NUM(SDL_GL_STEREO)
- MULTISAMPLEBUFFERS =
OpenGL attribuite - the number of buffers used for multisampe anti-aliasing,
default is 0
INT2NUM(SDL_GL_MULTISAMPLEBUFFERS)
- MULTISAMPLESAMPLES =
OpenGL attribute - the number of samples used around the current pixel
use for multisample anti-aliasing, default is 0
INT2NUM(SDL_GL_MULTISAMPLESAMPLES)
- ACCELERATED_VISUAL =
OpenGL attribute - 1 for requiring hardware acceleration, 0 for software rendering,
default is allowing either
INT2NUM(SDL_GL_ACCELERATED_VISUAL)
- RETAINED_BACKING =
OpenGL attribute - not used (deprecated)
INT2NUM(SDL_GL_RETAINED_BACKING)
- CONTEXT_MAJOR_VERSION =
OpenGL attribute - OpenGL context major version
INT2NUM(SDL_GL_CONTEXT_MAJOR_VERSION)
- CONTEXT_MINOR_VERSION =
OpenGL attribute - OpenGL context minor version
INT2NUM(SDL_GL_CONTEXT_MINOR_VERSION)
- CONTEXT_FLAGS =
OpenGL attribute - the bit combination of following constants, or 0. default is 0
These flags are mapped to some OpenGL extensions. Please see the documentation of each constant for more details.
INT2NUM(SDL_GL_CONTEXT_FLAGS)
- CONTEXT_PROFILE_MASK =
OpenGL attribute - type of GL context, one of the following constants, defaults depends on platform
INT2NUM(SDL_GL_CONTEXT_PROFILE_MASK)
- SHARE_WITH_CURRENT_CONTEXT =
OpenGL attribute - OpenGL context sharing, default is 0
INT2NUM(SDL_GL_SHARE_WITH_CURRENT_CONTEXT)
- FRAMEBUFFER_SRGB_CAPABLE =
OpenGL attribute - 1 for requesting sRGB capable visual, default to 0
INT2NUM(SDL_GL_FRAMEBUFFER_SRGB_CAPABLE)
- CONTEXT_EGL =
OpenGL attribute - not used (deprecated)
INT2NUM(SDL_GL_CONTEXT_EGL)
- CONTEXT_DEBUG_FLAG =
This flag maps to GLX_CONTEXT_DEBUG_BIT_ARB in the GLX_ARB_create_context extension for X11 and WGL_CONTEXT_DEBUG_BIT_ARB in the WGL_ARB_create_context extension for Windows.
INT2NUM(SDL_GL_CONTEXT_DEBUG_FLAG)
- CONTEXT_FORWARD_COMPATIBLE_FLAG =
This flag maps to GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB in the GLX_ARB_create_context extension for X11 and WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB in the WGL_ARB_create_context extension for Windows.
INT2NUM(SDL_GL_CONTEXT_FORWARD_COMPATIBLE_FLAG)
- CONTEXT_ROBUST_ACCESS_FLAG =
This flag maps to GLX_CONTEXT_ROBUST_ACCESS_BIT_ARB in the GLX_ARB_create_context_robustness extension for X11 and WGL_CONTEXT_ROBUST_ACCESS_BIT_ARB in the WGL_ARB_create_context_robustness extension for Windows.
INT2NUM(SDL_GL_CONTEXT_ROBUST_ACCESS_FLAG)
- CONTEXT_RESET_ISOLATION_FLAG =
This flag maps to GLX_CONTEXT_RESET_ISOLATION_BIT_ARB in the GLX_ARB_robustness_isolation extension for X11 and WGL_CONTEXT_RESET_ISOLATION_BIT_ARB in the WGL_ARB_create_context_robustness extension for Windows.
INT2NUM(SDL_GL_CONTEXT_RESET_ISOLATION_FLAG)
- CONTEXT_PROFILE_CORE =
OpenGL core profile - deprecated functions are disabled
INT2NUM(SDL_GL_CONTEXT_PROFILE_CORE)
- CONTEXT_PROFILE_COMPATIBILITY =
OpenGL compatibility profile - deprecated functions are allowed
INT2NUM(SDL_GL_CONTEXT_PROFILE_COMPATIBILITY)
- CONTEXT_PROFILE_ES =
OpenGL ES profile - only a subset of the base OpenGL functionality is available
INT2NUM(SDL_GL_CONTEXT_PROFILE_ES)
Class Method Summary collapse
-
.extension_supported?(extension) ⇒ Boolean
Return true if the current context supports extension.
-
.get_attribute(attr) ⇒ Integer
Get the acutal value for an attribute from current context.
-
.set_attribute(attr, value) ⇒ value
Set an OpenGL window attribute before window creation.
-
.swap_interval ⇒ Integer
Get the state of swap interval of the current context.
-
.swap_interval=(interval) ⇒ nil
Set the state of swap interval of the current context.
Class Method Details
.extension_supported?(extension) ⇒ Boolean
136 137 138 139 |
# File 'ext/sdl2_ext/gl.c', line 136
static VALUE GL_s_extension_supported_p(VALUE self, VALUE extension)
{
return INT2BOOL(SDL_GL_ExtensionSupported(StringValueCStr(extension)));
}
|
.get_attribute(attr) ⇒ Integer
180 181 182 183 184 185 |
# File 'ext/sdl2_ext/gl.c', line 180
static VALUE GL_s_get_attribute(VALUE self, VALUE attr)
{
int value;
HANDLE_ERROR(SDL_GL_GetAttribute(NUM2INT(attr), &value));
return INT2NUM(value);
}
|
.set_attribute(attr, value) ⇒ value
195 196 197 198 199 |
# File 'ext/sdl2_ext/gl.c', line 195
static VALUE GL_s_set_attribute(VALUE self, VALUE attr, VALUE value)
{
HANDLE_ERROR(SDL_GL_SetAttribute(NUM2INT(attr), NUM2INT(value)));
return value;
}
|
.swap_interval ⇒ Integer
Get the state of swap interval of the current context.
150 151 152 153 |
# File 'ext/sdl2_ext/gl.c', line 150
static VALUE GL_s_swap_interval(VALUE self)
{
return INT2NUM(SDL_GL_GetSwapInterval());
}
|
.swap_interval=(interval) ⇒ nil
167 168 169 170 171 |
# File 'ext/sdl2_ext/gl.c', line 167
static VALUE GL_s_set_swap_interval(VALUE self, VALUE interval)
{
HANDLE_ERROR(SDL_GL_SetSwapInterval(NUM2INT(interval)));
return Qnil;
}
|