mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-24 14:49:42 -06:00
DX11 plugin: Do destination-alpha in a single pass. No more drawing the same geometry twice! SMG is faster now because it uses destination-alpha extensively. This uses dual-source color blending, a DirectX 10-level feature. The equivalent OpenGL function comes from the GL_ARB_blend_func_extended extension, which was made core in OpenGL 3.3.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6294 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
@ -39,7 +39,6 @@ public:
|
||||
void SetShaderResource(unsigned int stage, ID3D11ShaderResourceView* srv);
|
||||
|
||||
void ApplyState(); // apply current state
|
||||
void AlphaPass(); // only modify the current state to enable the alpha pass
|
||||
void Reset();
|
||||
|
||||
// blend state
|
||||
@ -49,6 +48,8 @@ public:
|
||||
void SetDestBlend(D3D11_BLEND val);
|
||||
void SetBlendOp(D3D11_BLEND_OP val);
|
||||
|
||||
void SetDstAlpha(bool enable);
|
||||
|
||||
// sampler states
|
||||
void SetSamplerFilter(DWORD stage, D3D11_FILTER filter);
|
||||
|
||||
@ -80,6 +81,8 @@ private:
|
||||
ID3D11ShaderResourceView* shader_resources[8];
|
||||
D3D11_BLEND_DESC blenddesc;
|
||||
|
||||
bool m_useDstAlpha;
|
||||
|
||||
bool apply_called;
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user