Browse Source
Merge pull request #1775 from bunnei/blend-eq
maxwell_3d: Implement alternate blend equations.
pull/15/merge
bunnei
7 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with
12 additions and
0 deletions
-
src/video_core/engines/maxwell_3d.h
-
src/video_core/renderer_opengl/maxwell_to_gl.h
|
|
|
@ -389,6 +389,13 @@ public: |
|
|
|
ReverseSubtract = 3, |
|
|
|
Min = 4, |
|
|
|
Max = 5, |
|
|
|
|
|
|
|
// These values are used by Nouveau and some games. |
|
|
|
AddGL = 0x8006, |
|
|
|
SubtractGL = 0x8007, |
|
|
|
ReverseSubtractGL = 0x8008, |
|
|
|
MinGL = 0x800a, |
|
|
|
MaxGL = 0x800b |
|
|
|
}; |
|
|
|
|
|
|
|
enum class Factor : u32 { |
|
|
|
|
|
|
|
@ -218,14 +218,19 @@ inline GLenum DepthCompareFunc(Tegra::Texture::DepthCompareFunc func) { |
|
|
|
inline GLenum BlendEquation(Maxwell::Blend::Equation equation) { |
|
|
|
switch (equation) { |
|
|
|
case Maxwell::Blend::Equation::Add: |
|
|
|
case Maxwell::Blend::Equation::AddGL: |
|
|
|
return GL_FUNC_ADD; |
|
|
|
case Maxwell::Blend::Equation::Subtract: |
|
|
|
case Maxwell::Blend::Equation::SubtractGL: |
|
|
|
return GL_FUNC_SUBTRACT; |
|
|
|
case Maxwell::Blend::Equation::ReverseSubtract: |
|
|
|
case Maxwell::Blend::Equation::ReverseSubtractGL: |
|
|
|
return GL_FUNC_REVERSE_SUBTRACT; |
|
|
|
case Maxwell::Blend::Equation::Min: |
|
|
|
case Maxwell::Blend::Equation::MinGL: |
|
|
|
return GL_MIN; |
|
|
|
case Maxwell::Blend::Equation::Max: |
|
|
|
case Maxwell::Blend::Equation::MaxGL: |
|
|
|
return GL_MAX; |
|
|
|
} |
|
|
|
LOG_ERROR(Render_OpenGL, "Unimplemented blend equation={}", static_cast<u32>(equation)); |
|
|
|
|