diff --git a/src/core.c b/src/core.c index f02178c59..47ce5ceae 100644 --- a/src/core.c +++ b/src/core.c @@ -1774,7 +1774,7 @@ static void InitGraphicsDevice(int width, int height) #endif // defined(PLATFORM_ANDROID) || defined(PLATFORM_RPI) // Initialize OpenGL context (states and resources) - rlglInit(); + rlglInit(screenWidth, screenHeight); // Initialize screen viewport (area of the screen that you will actually draw to) // NOTE: Viewport must be recalculated if screen is resized diff --git a/src/rlgl.c b/src/rlgl.c index 99afd681c..ea65b6a4c 100644 --- a/src/rlgl.c +++ b/src/rlgl.c @@ -485,10 +485,6 @@ void rlOrtho(double left, double right, double bottom, double top, double near, void rlViewport(int x, int y, int width, int height) { glViewport(x, y, width, height); - - // Store default framebuffer size - screenWidth = width; - screenHeight = height; } //---------------------------------------------------------------------------------- @@ -952,7 +948,7 @@ int rlGetVersion(void) //---------------------------------------------------------------------------------- // Initialize rlgl: OpenGL extensions, default buffers/shaders/textures, OpenGL states -void rlglInit(void) +void rlglInit(int width, int height) { // Check OpenGL information and capabilities //------------------------------------------------------------------------------ @@ -1167,6 +1163,10 @@ void rlglInit(void) glClearColor(0.0f, 0.0f, 0.0f, 1.0f); // Set clear color (black) glClearDepth(1.0f); // Set clear depth value (default) glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Clear color and depth buffers (depth buffer required for 3D) + + // Store screen size into global variables + screenWidth = width; + screenHeight = height; TraceLog(INFO, "OpenGL default states initialized successfully"); } @@ -2524,7 +2524,7 @@ void InitOculusDevice(void) if (!oculusEnabled) { TraceLog(WARNING, "VR: Initializing Oculus simulator"); - + // Initialize framebuffer and textures for stereo rendering stereoFbo = rlglLoadRenderTexture(screenWidth, screenHeight); diff --git a/src/rlgl.h b/src/rlgl.h index 61d11d664..0f9c7a809 100644 --- a/src/rlgl.h +++ b/src/rlgl.h @@ -298,7 +298,7 @@ int rlGetVersion(void); // Returns current OpenGL versio //------------------------------------------------------------------------------------ // Functions Declaration - rlgl functionality //------------------------------------------------------------------------------------ -void rlglInit(void); // Initialize rlgl (shaders, VAO, VBO...) +void rlglInit(int width, int height); // Initialize rlgl (buffers, shaders, textures, states) void rlglClose(void); // De-init rlgl void rlglDraw(void); // Draw VAO/VBO void rlglLoadExtensions(void *loader); // Load OpenGL extensions