|
@@ -323,8 +323,8 @@ void RasterizerOpenGL::SetupShaders(GLenum primitive_mode) {
|
|
|
|
|
|
|
|
const auto stage_enum = static_cast<Maxwell::ShaderStage>(stage);
|
|
const auto stage_enum = static_cast<Maxwell::ShaderStage>(stage);
|
|
|
SetupDrawConstBuffers(stage_enum, shader);
|
|
SetupDrawConstBuffers(stage_enum, shader);
|
|
|
- SetupGlobalRegions(stage_enum, shader, primitive_mode, base_bindings);
|
|
|
|
|
- SetupTextures(stage_enum, shader, program_handle, base_bindings);
|
|
|
|
|
|
|
+ SetupGlobalRegions(stage_enum, shader);
|
|
|
|
|
+ SetupTextures(stage_enum, shader, base_bindings);
|
|
|
|
|
|
|
|
// Workaround for Intel drivers.
|
|
// Workaround for Intel drivers.
|
|
|
// When a clip distance is enabled but not set in the shader it crops parts of the screen
|
|
// When a clip distance is enabled but not set in the shader it crops parts of the screen
|
|
@@ -824,8 +824,7 @@ void RasterizerOpenGL::SetupConstBuffer(const Tegra::Engines::ConstBufferInfo& b
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
void RasterizerOpenGL::SetupGlobalRegions(Tegra::Engines::Maxwell3D::Regs::ShaderStage stage,
|
|
void RasterizerOpenGL::SetupGlobalRegions(Tegra::Engines::Maxwell3D::Regs::ShaderStage stage,
|
|
|
- const Shader& shader, GLenum primitive_mode,
|
|
|
|
|
- BaseBindings base_bindings) {
|
|
|
|
|
|
|
+ const Shader& shader) {
|
|
|
const auto& entries = shader->GetShaderEntries().global_memory_entries;
|
|
const auto& entries = shader->GetShaderEntries().global_memory_entries;
|
|
|
for (std::size_t bindpoint = 0; bindpoint < entries.size(); ++bindpoint) {
|
|
for (std::size_t bindpoint = 0; bindpoint < entries.size(); ++bindpoint) {
|
|
|
const auto& entry{entries[bindpoint]};
|
|
const auto& entry{entries[bindpoint]};
|
|
@@ -839,7 +838,7 @@ void RasterizerOpenGL::SetupGlobalRegions(Tegra::Engines::Maxwell3D::Regs::Shade
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
void RasterizerOpenGL::SetupTextures(Maxwell::ShaderStage stage, const Shader& shader,
|
|
void RasterizerOpenGL::SetupTextures(Maxwell::ShaderStage stage, const Shader& shader,
|
|
|
- GLuint program_handle, BaseBindings base_bindings) {
|
|
|
|
|
|
|
+ BaseBindings base_bindings) {
|
|
|
MICROPROFILE_SCOPE(OpenGL_Texture);
|
|
MICROPROFILE_SCOPE(OpenGL_Texture);
|
|
|
const auto& gpu = system.GPU();
|
|
const auto& gpu = system.GPU();
|
|
|
const auto& maxwell3d = gpu.Maxwell3D();
|
|
const auto& maxwell3d = gpu.Maxwell3D();
|