Corrected bug on stereo rendering

This commit is contained in:
raysan5 2016-06-26 14:13:11 +02:00
parent 4ff85c2ac2
commit 8652e644dd
3 changed files with 8 additions and 8 deletions

View file

@ -1774,7 +1774,7 @@ static void InitGraphicsDevice(int width, int height)
#endif // defined(PLATFORM_ANDROID) || defined(PLATFORM_RPI) #endif // defined(PLATFORM_ANDROID) || defined(PLATFORM_RPI)
// Initialize OpenGL context (states and resources) // Initialize OpenGL context (states and resources)
rlglInit(); rlglInit(screenWidth, screenHeight);
// Initialize screen viewport (area of the screen that you will actually draw to) // Initialize screen viewport (area of the screen that you will actually draw to)
// NOTE: Viewport must be recalculated if screen is resized // NOTE: Viewport must be recalculated if screen is resized

View file

@ -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) void rlViewport(int x, int y, int width, int height)
{ {
glViewport(x, y, width, 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 // Initialize rlgl: OpenGL extensions, default buffers/shaders/textures, OpenGL states
void rlglInit(void) void rlglInit(int width, int height)
{ {
// Check OpenGL information and capabilities // 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) glClearColor(0.0f, 0.0f, 0.0f, 1.0f); // Set clear color (black)
glClearDepth(1.0f); // Set clear depth value (default) 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) 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"); TraceLog(INFO, "OpenGL default states initialized successfully");
} }
@ -2524,7 +2524,7 @@ void InitOculusDevice(void)
if (!oculusEnabled) if (!oculusEnabled)
{ {
TraceLog(WARNING, "VR: Initializing Oculus simulator"); TraceLog(WARNING, "VR: Initializing Oculus simulator");
// Initialize framebuffer and textures for stereo rendering // Initialize framebuffer and textures for stereo rendering
stereoFbo = rlglLoadRenderTexture(screenWidth, screenHeight); stereoFbo = rlglLoadRenderTexture(screenWidth, screenHeight);

View file

@ -298,7 +298,7 @@ int rlGetVersion(void); // Returns current OpenGL versio
//------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------
// Functions Declaration - rlgl functionality // 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 rlglClose(void); // De-init rlgl
void rlglDraw(void); // Draw VAO/VBO void rlglDraw(void); // Draw VAO/VBO
void rlglLoadExtensions(void *loader); // Load OpenGL extensions void rlglLoadExtensions(void *loader); // Load OpenGL extensions