Serwis Edukacyjny Nauczycieli w I-LO w Tarnowie ![]() Materiały dla uczniów liceum |
Wyjście Spis treści Wstecz Dalej
Autor artykułu: mgr Jerzy
Wałaszek |
©2023 mgr Jerzy Wałaszek
|
SDL_GL_SetAttribute
SPIS TREŚCI |
Rozdział jest tłumaczeniem oryginalnej instrukcji dla biblioteki SDL2.
Użyj tej funkcji, aby ustawić atrybuty okna OpenGL przed utworzeniem tego okna.
int SDL_GL_SetAttribute(SDL_GLattr attr, int value) |
attr | atrybut OpenGL do ustawienia; zobacz do Uwag. |
value | pożądana wartość dla tego atrybutu. |
SDL_Window *window; SDL_GLContext context; 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); window = SDL_CreateWindow("OpenGL Window", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 640, 480, SDL_WINDOW_OPENGL); if (!window) { fprintf(stderr, "Couldn't create window: %s\n", SDL_GetError()); return; } context = SDL_GL_CreateContext(window); if (!context) { fprintf(stderr, "Couldn't create context: %s\n", SDL_GetError()); return; } int r, g, b; SDL_GL_GetAttribute(SDL_GL_RED_SIZE, &r); SDL_GL_GetAttribute(SDL_GL_GREEN_SIZE, &g); SDL_GL_GetAttribute(SDL_GL_BLUE_SIZE, &b); printf("Red size: %d, Green size: %d, Blue size: %d\n", r, g, b); |
Parametr attr może być jedną z wartości SDL_GLattr:
SDL_GL_RED_SIZE | minimalna liczba bitów dla kanału czerwonego w buforze koloru, standardowo 3. |
SDL_GL_GREEN_SIZE | minimalna liczba bitów dla kanału zielonego w buforze koloru, standardowo 3. |
SDL_GL_BLUE_SIZE | minimalna liczba bitów dla kanału niebieskiego w buforze koloru, standardowo 2. |
SDL_GL_ALPHA_SIZE | minimalna liczba bitów dla kanału alfa w buforze koloru, standardowo 0. |
SDL_GL_BUFFER_SIZE | minimalna liczba bitów rozmiaru bufora ramki, standardowo 0. |
SDL_GL_DOUBLEBUFFER | określa pojedyncze lub podwójne buforowanie, standardowo podwójne. |
SDL_GL_DEPTH_SIZE | minimalna liczba bitów w buforze głębokości, standardowo 16. |
SDL_GL_STENCIL_SIZE | minimalna liczba bitów w buforze szablonowym, standardowo 0. |
SDL_GL_ACCUM_RED_SIZE | minimalna liczba bitów kanału czerwonego w buforze akumulacyjnym, standardowo 0. |
SDL_GL_ACCUM_GREEN_SIZE | minimalna liczba bitów kanału zielonego w buforze akumulacyjnym, standardowo 0. |
SDL_GL_ACCUM_BLUE_SIZE | minimalna liczba bitów kanału niebieskiego w buforze akumulacyjnym, standardowo 0. |
SDL_GL_ACCUM_ALPHA_SIZE | minimalna liczba bitów kanału alfa w buforze akumulacyjnym, standardowo 0. |
SDL_GL_STEREO | wyjście zwykłe lub stereoskopowe 3D, standardowo zwykłe. |
SDL_GL_MULTISAMPLEBUFFERS | liczba buforów używana do wygładzania wielopróbkowego, standardowo 0. |
SDL_GL_MULTISAMPLESAMPLES | Liczba próbek używanych wokół bieżącego piksela przy wygładzaniu wielopróbkowym; standardowo 0 |
SDL_GL_ACCELERATED_VISUAL | ustaw na 1, aby uzyskać akcelerację sprzętową, ustaw na 0, aby wymusić rysowanie programowe; standardowo dozwolone obie wartości. |
SDL_GL_RETAINED_BACKING | nie używane (przestarzałe). |
SDL_GL_CONTEXT_MAJOR_VERSION | główny numer wersji kontekstu OpenGL |
SDL_GL_CONTEXT_MINOR_VERSION | dalszy numer wersji kontekstu OpenGL |
SDL_GL_CONTEXT_FLAGS | pewna kombinacja 0 lub więcej elementów enumeracji SDL_GLcontextFlag; standardowo 0. |
SDL_GL_CONTEXT_PROFILE_MASK | typ kontekstu GL (Core, Compatibility, ES). Zobacz na See SDL_GLprofile; standardowa wartość zależy od platformy. |
SDL_GL_SHARE_WITH_CURRENT_CONTEXT | współdzielenie kontekstu OpenGL; standardowo 0. |
SDL_GL_FRAMEBUFFER_SRGB_CAPABLE | wymóg wyświetlacza o własnościach sRGB; standardowo 0 (>= SDL 2.0.1). |
SDL_GL_CONTEXT_RELEASE_BEHAVIOR | ustawia kontekst na zachowanie typu release; standardowo 1 (>= SDL 2.0.4). |
SDL_GL_CONTEXT_EGL | nie używane (przestarzałe). |
![]() |
Zespół Przedmiotowy Chemii-Fizyki-Informatyki w I Liceum Ogólnokształcącym im. Kazimierza Brodzińskiego w Tarnowie ul. Piłsudskiego 4 ©2023 mgr Jerzy Wałaszek |
Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone
pod warunkiem podania źródła oraz niepobierania za to pieniędzy.
Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl
Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.
Informacje dodatkowe.