Browse Source

Don't create an ortho matrix when the viewport is 0 in any axis. (#1504)

* Don't create an ortho matrix when the viewport is 0 in any axis.
Not all compilers divide by 0 and return inf, some segfault.
The matrix is not used by anything when minimized, so it just needs to not be called.

* Better fix that always ensures the rlgl matrix is always valid

* Better fix that always ensures the rlgl matrix is always valid
pull/1515/head
Jeffery Myers 4 years ago
committed by GitHub
parent
commit
5d4aada526
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 6 additions and 0 deletions
  1. +6
    -0
      src/rlgl.h

+ 6
- 0
src/rlgl.h View File

@ -1100,6 +1100,12 @@ void rlFrustum(double left, double right, double bottom, double top, double znea
// Multiply the current matrix by an orthographic matrix generated by parameters // Multiply the current matrix by an orthographic matrix generated by parameters
void rlOrtho(double left, double right, double bottom, double top, double znear, double zfar) void rlOrtho(double left, double right, double bottom, double top, double znear, double zfar)
{ {
if (right - left <= 0 || bottom - top <= 0)
{
*RLGL.State.currentMatrix = MatrixIdentity();
return;
}
Matrix matOrtho = MatrixOrtho(left, right, bottom, top, znear, zfar); Matrix matOrtho = MatrixOrtho(left, right, bottom, top, znear, zfar);
*RLGL.State.currentMatrix = MatrixMultiply(*RLGL.State.currentMatrix, matOrtho); *RLGL.State.currentMatrix = MatrixMultiply(*RLGL.State.currentMatrix, matOrtho);

Loading…
Cancel
Save