From 453543fb882c2465b771b32baa204a1c085e0ea1 Mon Sep 17 00:00:00 2001 From: gdkchan Date: Wed, 14 Nov 2018 19:50:31 -0200 Subject: [PATCH] Initialize blend registers with default values (#497) --- Ryujinx.Graphics/Gal/GalPipelineState.cs | 4 ++-- Ryujinx.Graphics/NvGpuEngine3d.cs | 10 ++++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/Ryujinx.Graphics/Gal/GalPipelineState.cs b/Ryujinx.Graphics/Gal/GalPipelineState.cs index 793fb395b..8630da9cc 100644 --- a/Ryujinx.Graphics/Gal/GalPipelineState.cs +++ b/Ryujinx.Graphics/Gal/GalPipelineState.cs @@ -24,10 +24,10 @@ { Enabled = false, SeparateAlpha = false, - EquationRgb = 0, + EquationRgb = GalBlendEquation.FuncAdd, FuncSrcRgb = GalBlendFactor.One, FuncDstRgb = GalBlendFactor.Zero, - EquationAlpha = 0, + EquationAlpha = GalBlendEquation.FuncAdd, FuncSrcAlpha = GalBlendFactor.One, FuncDstAlpha = GalBlendFactor.Zero }; diff --git a/Ryujinx.Graphics/NvGpuEngine3d.cs b/Ryujinx.Graphics/NvGpuEngine3d.cs index f4a453472..0d748ce74 100644 --- a/Ryujinx.Graphics/NvGpuEngine3d.cs +++ b/Ryujinx.Graphics/NvGpuEngine3d.cs @@ -69,6 +69,16 @@ namespace Ryujinx.Graphics //Ensure that all components are enabled by default. //FIXME: Is this correct? WriteRegister(NvGpuEngine3dReg.ColorMaskN, 0x1111); + + for (int Index = 0; Index < GalPipelineState.RenderTargetsCount; Index++) + { + WriteRegister(NvGpuEngine3dReg.IBlendNEquationRgb + Index * 8, (int)GalBlendEquation.FuncAdd); + WriteRegister(NvGpuEngine3dReg.IBlendNFuncSrcRgb + Index * 8, (int)GalBlendFactor.One); + WriteRegister(NvGpuEngine3dReg.IBlendNFuncDstRgb + Index * 8, (int)GalBlendFactor.Zero); + WriteRegister(NvGpuEngine3dReg.IBlendNEquationAlpha + Index * 8, (int)GalBlendEquation.FuncAdd); + WriteRegister(NvGpuEngine3dReg.IBlendNFuncSrcAlpha + Index * 8, (int)GalBlendFactor.One); + WriteRegister(NvGpuEngine3dReg.IBlendNFuncDstAlpha + Index * 8, (int)GalBlendFactor.Zero); + } } public void CallMethod(NvGpuVmm Vmm, NvGpuPBEntry PBEntry)