Merge remote-tracking branch 'remotes/origin/master' into Texture_Cleanup

# Conflicts:
#	src/polyrenderer/poly_renderthread.cpp
#	src/swrenderer/r_renderthread.cpp
This commit is contained in:
Christoph Oelckers 2018-12-10 18:47:21 +01:00
commit 91a8f5cd04
17 changed files with 126 additions and 59 deletions

View file

@ -89,8 +89,8 @@ namespace swrenderer
return pal_drawers.get();
}
void RenderThread::PrepareTexture(FSoftwareTexture *texture, FRenderStyle style)
{
static std::mutex loadmutex;
void RenderThread::PrepareTexture(FSoftwareTexture *texture, FRenderStyle style) {
if (texture == nullptr)
return;
@ -102,8 +102,6 @@ namespace swrenderer
// It is critical that this function is called before any direct
// calls to GetPixels for this to work.
static std::mutex loadmutex;
std::unique_lock<std::mutex> lock(loadmutex);
const FSoftwareTextureSpan *spans;
@ -117,13 +115,12 @@ namespace swrenderer
bool alpha = !!(style.Flags & STYLEF_RedIsAlpha);
texture->GetPixels(alpha);
texture->GetColumn(alpha, 0, &spans);
}
}
}
static std::mutex polyobjmutex;
void RenderThread::PreparePolyObject(subsector_t *sub)
{
static std::mutex polyobjmutex;
std::unique_lock<std::mutex> lock(polyobjmutex);
if (sub->BSP == nullptr || sub->BSP->bDirty)