SDL Library Documentation
Prev |  | Next

# SDL_GL_SetAttribute

## Name

SDL_GL_SetAttribute -- Set a special SDL/OpenGL attribute

## Synopsis

    #include "SDL.h"

``int SDL_GL_SetAttribute`(SDL_GLattr attr, int value);`

## Description

Sets the OpenGL attribute `attr` to `value`. The attributes you set don't take effect until after a call to `SDL_SetVideoMode`. You should use `SDL_GL_GetAttribute` to check the values after a `SDL_SetVideoMode` call.

## Return Value

Returns 0 on success, or -1 on error.

## Example

    SDL_GL_SetAttribute( SDL_GL_RED_SIZE, 5 );
    SDL_GL_SetAttribute( SDL_GL_GREEN_SIZE, 5 );
    SDL_GL_SetAttribute( SDL_GL_BLUE_SIZE, 5 );
    SDL_GL_SetAttribute( SDL_GL_DEPTH_SIZE, 16 );
    SDL_GL_SetAttribute( SDL_GL_DOUBLEBUFFER, 1 );
    if ( (screen=SDL_SetVideoMode( 640, 480, 16, SDL_OPENGL )) == NULL ) {
      fprintf(stderr, "Couldn't set GL mode: %s\n", SDL_GetError());
      SDL_Quit();
      return;
    }

> Note: The `SDL_DOUBLEBUF` flag is not required to enable double buffering when setting an OpenGL video mode. Double buffering is enabled or disabled using the SDL_GL_DOUBLEBUFFER attribute.

## See Also

`SDL_GL_GetAttribute`, GL Attributes

Prev | Home | Next
SDL_GL_GetAttribute | Up | SDL_GL_SwapBuffers