SDL_gpu  0.11.0
A hardware-accelerated, cross-platform 2D graphics API
renderer_OpenGL_1.c
Go to the documentation of this file.
1 #include "SDL_gpu_OpenGL_1.h"
2 #include "SDL_gpu_RendererImpl.h"
3 
4 
5 #if defined(SDL_GPU_DISABLE_OPENGL) || defined(SDL_GPU_DISABLE_OPENGL_1)
6 
7 // Dummy implementations
10 
11 #else
12 
13 // Most of the code pulled in from here...
14 #define SDL_GPU_USE_OPENGL
15 #define SDL_GPU_USE_FIXED_FUNCTION_PIPELINE
16 #define SDL_GPU_USE_BUFFER_PIPELINE
17 #define SDL_GPU_USE_BUFFER_PIPELINE_FALLBACK
18 #define SDL_GPU_GL_TIER 1
19 #define SDL_GPU_GLSL_VERSION 110
20 #define SDL_GPU_GL_MAJOR_VERSION 1
21 #define SDL_GPU_APPLY_TRANSFORMS_TO_GL_STACK
22 #define SDL_GPU_NO_VAO
23 
24 #include "renderer_GL_common.inl"
26 
27 
29 {
30  GPU_Renderer* renderer = (GPU_Renderer*)SDL_malloc(sizeof(GPU_Renderer));
31  if(renderer == NULL)
32  return NULL;
33 
34  memset(renderer, 0, sizeof(GPU_Renderer));
35 
36  renderer->id = request;
37  renderer->id.renderer = GPU_RENDERER_OPENGL_1;
39  renderer->min_shader_version = 110;
41 
42  renderer->default_image_anchor_x = 0.5f;
43  renderer->default_image_anchor_y = 0.5f;
44 
45  renderer->current_context_target = NULL;
46 
47  renderer->impl = (GPU_RendererImpl*)SDL_malloc(sizeof(GPU_RendererImpl));
48  memset(renderer->impl, 0, sizeof(GPU_RendererImpl));
49  SET_COMMON_FUNCTIONS(renderer->impl);
50 
51  return renderer;
52 }
53 
55 {
56  if(renderer == NULL)
57  return;
58 
59  SDL_free(renderer->impl);
60  SDL_free(renderer);
61 }
62 
63 #endif
#define SDL_GPU_GLSL_VERSION
GPU_RendererID id
Definition: SDL_gpu.h:656
int max_shader_version
Definition: SDL_gpu.h:663
GPU_Target * current_context_target
Definition: SDL_gpu.h:667
GPU_ShaderLanguageEnum shader_language
Definition: SDL_gpu.h:661
#define SET_COMMON_FUNCTIONS(impl)
float default_image_anchor_y
Definition: SDL_gpu.h:674
int min_shader_version
Definition: SDL_gpu.h:662
struct GPU_RendererImpl * impl
Definition: SDL_gpu.h:676
void GPU_FreeRenderer_OpenGL_1(GPU_Renderer *renderer)
float default_image_anchor_x
Definition: SDL_gpu.h:673
GPU_RendererEnum renderer
Definition: SDL_gpu.h:122
GPU_Renderer * GPU_CreateRenderer_OpenGL_1(GPU_RendererID request)