Assert Scissor tests

This commit is contained in:
FernandoS27 2018-10-08 20:49:36 -04:00
parent 561d79e034
commit 30ff42b8cc
3 changed files with 31 additions and 1 deletions

View file

@ -541,6 +541,7 @@ void RasterizerOpenGL::DrawArrays() {
SyncLogicOpState();
SyncCullMode();
SyncAlphaTest();
SyncScissorTest();
SyncTransformFeedback();
SyncPointState();
@ -972,6 +973,17 @@ void RasterizerOpenGL::SyncAlphaTest() {
}
}
void RasterizerOpenGL::SyncScissorTest() {
const auto& regs = Core::System::GetInstance().GPU().Maxwell3D().regs;
// TODO(Rodrigo): Alpha testing is a legacy OpenGL feature, but it can be
// implemented with a test+discard in fragment shaders.
if (regs.scissor_test.enable != 0) {
LOG_CRITICAL(Render_OpenGL, "Scissor testing is not implemented");
UNREACHABLE();
}
}
void RasterizerOpenGL::SyncTransformFeedback() {
const auto& regs = Core::System::GetInstance().GPU().Maxwell3D().regs;

View file

@ -165,6 +165,9 @@ private:
/// Syncs the alpha test state to match the guest state
void SyncAlphaTest();
/// Syncs the scissor test state to match the guest state
void SyncScissorTest();
/// Syncs the transform feedback state to match the guest state
void SyncTransformFeedback();