mirror of
https://github.com/cemu-project/Cemu.git
synced 2026-04-26 13:05:34 -06:00
Remove LatteShader_FinishCompilation
CleanupAfterCompile is already done in LatteShader_CreateRendererShader WaitForCompiled is already done in PreponeCompilation
This commit is contained in:
parent
7d6a8b53a4
commit
cb47ed8499
@ -367,19 +367,6 @@ void LatteShader_CreateRendererShader(LatteDecompilerShader* shader, bool compil
|
||||
LatteShader_CleanupAfterCompile(shader);
|
||||
}
|
||||
|
||||
void LatteShader_FinishCompilation(LatteDecompilerShader* shader)
|
||||
{
|
||||
if (shader->hasError)
|
||||
{
|
||||
cemuLog_logDebug(LogType::Force, "LatteShader_finishCompilation(): Skipped because of error in shader {:x}", shader->baseHash);
|
||||
return;
|
||||
}
|
||||
shader->shader->WaitForCompiled();
|
||||
|
||||
LatteShader_prepareSeparableUniforms(shader);
|
||||
LatteShader_CleanupAfterCompile(shader);
|
||||
}
|
||||
|
||||
void LatteSHRC_RegisterShader(LatteDecompilerShader* shader, uint64 baseHash, uint64 auxHash)
|
||||
{
|
||||
auto& cache = LatteSHRC_GetCacheByType(shader->shaderType);
|
||||
@ -849,7 +836,7 @@ LatteDecompilerShader* LatteShader_CompileSeparableVertexShader(uint64 baseHash,
|
||||
{
|
||||
if (vertexShader->shader)
|
||||
vertexShader->shader->PreponeCompilation();
|
||||
LatteShader_FinishCompilation(vertexShader);
|
||||
LatteShader_prepareSeparableUniforms(vertexShader);
|
||||
}
|
||||
|
||||
LatteSHRC_RegisterShader(vertexShader, vertexShader->baseHash, vertexShader->auxHash);
|
||||
@ -878,7 +865,7 @@ LatteDecompilerShader* LatteShader_CompileSeparableGeometryShader(uint64 baseHas
|
||||
{
|
||||
if (geometryShader->shader)
|
||||
geometryShader->shader->PreponeCompilation();
|
||||
LatteShader_FinishCompilation(geometryShader);
|
||||
LatteShader_prepareSeparableUniforms(geometryShader);
|
||||
}
|
||||
|
||||
LatteSHRC_RegisterShader(geometryShader, geometryShader->baseHash, geometryShader->auxHash);
|
||||
@ -907,7 +894,7 @@ LatteDecompilerShader* LatteShader_CompileSeparablePixelShader(uint64 baseHash,
|
||||
{
|
||||
if (pixelShader->shader)
|
||||
pixelShader->shader->PreponeCompilation();
|
||||
LatteShader_FinishCompilation(pixelShader);
|
||||
LatteShader_prepareSeparableUniforms(pixelShader);
|
||||
}
|
||||
|
||||
LatteSHRC_RegisterShader(pixelShader, _shaderBaseHash_ps, psAuxHash);
|
||||
|
||||
@ -100,7 +100,6 @@ void LatteShader_GetDecompilerOptions(struct LatteDecompilerOptions& options, La
|
||||
LatteDecompilerShader* LatteShader_CreateShaderFromDecompilerOutput(LatteDecompilerOutput_t& decompilerOutput, uint64 baseHash, bool calculateAuxHash, uint64 optionalAuxHash, uint32* contextRegister);
|
||||
|
||||
void LatteShader_CreateRendererShader(LatteDecompilerShader* shader, bool compileAsync);
|
||||
void LatteShader_FinishCompilation(LatteDecompilerShader* shader);
|
||||
|
||||
void LatteShader_prepareSeparableUniforms(LatteDecompilerShader* shader);
|
||||
|
||||
|
||||
@ -112,7 +112,10 @@ void LatteShaderCache_updateCompileQueue(sint32 maxRemainingEntries)
|
||||
break;
|
||||
auto shader = shaderCompileQueue.entry[0].shader;
|
||||
if (shader)
|
||||
LatteShader_FinishCompilation(shader);
|
||||
{
|
||||
shader->shader->PreponeCompilation();
|
||||
LatteShader_prepareSeparableUniforms(shader);
|
||||
}
|
||||
LatteShaderCache_removeFromCompileQueue(0);
|
||||
}
|
||||
}
|
||||
|
||||
@ -28,6 +28,8 @@ void LatteShader_prepareSeparableUniforms(LatteDecompilerShader* shader)
|
||||
{
|
||||
if (g_renderer->GetType() != RendererAPI::OpenGL)
|
||||
return;
|
||||
if(shader->hasError)
|
||||
return;
|
||||
|
||||
auto shaderGL = (RendererShaderGL*)shader->shader;
|
||||
// setup uniform info
|
||||
|
||||
Loading…
Reference in New Issue
Block a user