mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-24 14:49:42 -06:00
Renderer: Change SetBlendState to accept a BlendingState
This decouples the state generation (from the emulated GPU) from the management of internal backend state.
This commit is contained in:
@ -8,6 +8,7 @@
|
||||
#include "VideoCommon/BPFunctions.h"
|
||||
#include "VideoCommon/BPMemory.h"
|
||||
#include "VideoCommon/RenderBase.h"
|
||||
#include "VideoCommon/RenderState.h"
|
||||
#include "VideoCommon/VertexManagerBase.h"
|
||||
#include "VideoCommon/VideoCommon.h"
|
||||
#include "VideoCommon/VideoConfig.h"
|
||||
@ -72,7 +73,9 @@ void SetDepthMode()
|
||||
|
||||
void SetBlendMode()
|
||||
{
|
||||
g_renderer->SetBlendMode(false);
|
||||
BlendingState state;
|
||||
state.Generate(bpmem);
|
||||
g_renderer->SetBlendingState(state);
|
||||
}
|
||||
|
||||
/* Explanation of the magic behind ClearScreen:
|
||||
|
@ -29,6 +29,7 @@
|
||||
#include "VideoCommon/AVIDump.h"
|
||||
#include "VideoCommon/BPMemory.h"
|
||||
#include "VideoCommon/FPSCounter.h"
|
||||
#include "VideoCommon/RenderState.h"
|
||||
#include "VideoCommon/VideoCommon.h"
|
||||
|
||||
class PostProcessingShaderImplementation;
|
||||
@ -63,7 +64,7 @@ public:
|
||||
PP_EFB_COPY_CLOCKS
|
||||
};
|
||||
|
||||
virtual void SetBlendMode(bool forceUpdate) {}
|
||||
virtual void SetBlendingState(const BlendingState& state) {}
|
||||
virtual void SetScissorRect(const EFBRectangle& rc) {}
|
||||
virtual void SetGenerationMode() {}
|
||||
virtual void SetDepthMode() {}
|
||||
|
Reference in New Issue
Block a user