mirror of
https://github.com/ZDoom/qzdoom-gpl.git
synced 2024-12-02 08:22:25 +00:00
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
This commit is contained in:
commit
c54b4e74f5
5 changed files with 16 additions and 5 deletions
|
@ -1747,6 +1747,14 @@ void C_AddTabCommand (const char *name)
|
||||||
|
|
||||||
void C_RemoveTabCommand (const char *name)
|
void C_RemoveTabCommand (const char *name)
|
||||||
{
|
{
|
||||||
|
if (TabCommands.Size() == 0)
|
||||||
|
{
|
||||||
|
// There are no tab commands that can be removed.
|
||||||
|
// This is important to skip construction of aname
|
||||||
|
// in case the NameManager has already been destroyed.
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
FName aname(name, true);
|
FName aname(name, true);
|
||||||
|
|
||||||
if (aname == NAME_None)
|
if (aname == NAME_None)
|
||||||
|
|
|
@ -422,7 +422,7 @@ void
|
||||||
VSMatrix::computeNormalMatrix(const FLOATTYPE *aMatrix)
|
VSMatrix::computeNormalMatrix(const FLOATTYPE *aMatrix)
|
||||||
{
|
{
|
||||||
|
|
||||||
FLOATTYPE mMat3x3[9];
|
double mMat3x3[9];
|
||||||
|
|
||||||
mMat3x3[0] = aMatrix[0];
|
mMat3x3[0] = aMatrix[0];
|
||||||
mMat3x3[1] = aMatrix[1];
|
mMat3x3[1] = aMatrix[1];
|
||||||
|
@ -436,7 +436,7 @@ VSMatrix::computeNormalMatrix(const FLOATTYPE *aMatrix)
|
||||||
mMat3x3[7] = aMatrix[9];
|
mMat3x3[7] = aMatrix[9];
|
||||||
mMat3x3[8] = aMatrix[10];
|
mMat3x3[8] = aMatrix[10];
|
||||||
|
|
||||||
FLOATTYPE det, invDet;
|
double det, invDet;
|
||||||
|
|
||||||
det = mMat3x3[0] * (mMat3x3[4] * mMat3x3[8] - mMat3x3[5] * mMat3x3[7]) +
|
det = mMat3x3[0] * (mMat3x3[4] * mMat3x3[8] - mMat3x3[5] * mMat3x3[7]) +
|
||||||
mMat3x3[1] * (mMat3x3[5] * mMat3x3[6] - mMat3x3[8] * mMat3x3[3]) +
|
mMat3x3[1] * (mMat3x3[5] * mMat3x3[6] - mMat3x3[8] * mMat3x3[3]) +
|
||||||
|
|
|
@ -375,7 +375,7 @@ void GLSprite::Draw(int pass)
|
||||||
gl_RenderState.Apply();
|
gl_RenderState.Apply();
|
||||||
|
|
||||||
FVector3 v[4];
|
FVector3 v[4];
|
||||||
if ((actor->renderflags & RF_SPRITETYPEMASK) == RF_FLATSPRITE)
|
if (actor != nullptr && (actor->renderflags & RF_SPRITETYPEMASK) == RF_FLATSPRITE)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -437,7 +437,7 @@ inline void GLSprite::PutSprite(bool translucent)
|
||||||
{
|
{
|
||||||
int list;
|
int list;
|
||||||
// [BB] Allow models to be drawn in the GLDL_TRANSLUCENT pass.
|
// [BB] Allow models to be drawn in the GLDL_TRANSLUCENT pass.
|
||||||
if (translucent || (!modelframe && (actor->renderflags & RF_SPRITETYPEMASK) != RF_WALLSPRITE))
|
if (translucent || actor == nullptr || (!modelframe && (actor->renderflags & RF_SPRITETYPEMASK) != RF_WALLSPRITE))
|
||||||
{
|
{
|
||||||
list = GLDL_TRANSLUCENT;
|
list = GLDL_TRANSLUCENT;
|
||||||
}
|
}
|
||||||
|
|
|
@ -197,7 +197,7 @@ void OpenGLFrameBuffer::Update()
|
||||||
Unlock();
|
Unlock();
|
||||||
CheckBench();
|
CheckBench();
|
||||||
|
|
||||||
if (Windowed)
|
if (!IsFullscreen())
|
||||||
{
|
{
|
||||||
int clientWidth = GetClientWidth();
|
int clientWidth = GetClientWidth();
|
||||||
int clientHeight = GetClientHeight();
|
int clientHeight = GetClientHeight();
|
||||||
|
|
|
@ -35,6 +35,7 @@
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "name.h"
|
#include "name.h"
|
||||||
#include "c_dispatch.h"
|
#include "c_dispatch.h"
|
||||||
|
#include "c_console.h"
|
||||||
|
|
||||||
// MACROS ------------------------------------------------------------------
|
// MACROS ------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -268,6 +269,8 @@ FName::NameManager::~NameManager()
|
||||||
{
|
{
|
||||||
NameBlock *block, *next;
|
NameBlock *block, *next;
|
||||||
|
|
||||||
|
C_ClearTabCommands();
|
||||||
|
|
||||||
for (block = Blocks; block != NULL; block = next)
|
for (block = Blocks; block != NULL; block = next)
|
||||||
{
|
{
|
||||||
next = block->NextBlock;
|
next = block->NextBlock;
|
||||||
|
|
Loading…
Reference in a new issue