浏览代码

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 年前
committed by GitHub
父节点
当前提交
5d4aada526
找不到此签名对应的密钥 GPG 密钥 ID: 4AEE18F83AFDEB23
共有 1 个文件被更改,包括 6 次插入0 次删除
  1. +6
    -0
      src/rlgl.h

+ 6
- 0
src/rlgl.h 查看文件

@ -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);

正在加载...
取消
保存