summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Lioncash2018-07-20 01:04:32 -0400
committerGravatar Lioncash2018-07-20 01:11:20 -0400
commite6b3d3a9ead9a6bafc2a91caf917d58df49ef091 (patch)
tree7bf2f3a0bdda269adf3b981dc94f1ac20852773a
parentMerge pull request #726 from lioncash/overload (diff)
downloadyuzu-e6b3d3a9ead9a6bafc2a91caf917d58df49ef091.tar.gz
yuzu-e6b3d3a9ead9a6bafc2a91caf917d58df49ef091.tar.xz
yuzu-e6b3d3a9ead9a6bafc2a91caf917d58df49ef091.zip
gl_state: Get rid of mismatched sign conversions
While we're at it, amend the loop variable type to be the same width as that returned by the .size() call.
Diffstat (limited to '')
-rw-r--r--src/video_core/renderer_opengl/gl_state.cpp31
1 files changed, 17 insertions, 14 deletions
diff --git a/src/video_core/renderer_opengl/gl_state.cpp b/src/video_core/renderer_opengl/gl_state.cpp
index 2e8a422a8..8eced0480 100644
--- a/src/video_core/renderer_opengl/gl_state.cpp
+++ b/src/video_core/renderer_opengl/gl_state.cpp
@@ -181,28 +181,31 @@ void OpenGLState::Apply() const {
181 } 181 }
182 182
183 // Textures 183 // Textures
184 for (int i = 0; i < std::size(texture_units); ++i) { 184 for (std::size_t i = 0; i < std::size(texture_units); ++i) {
185 if (texture_units[i].texture_2d != cur_state.texture_units[i].texture_2d) { 185 const auto& texture_unit = texture_units[i];
186 glActiveTexture(TextureUnits::MaxwellTexture(i).Enum()); 186 const auto& cur_state_texture_unit = cur_state.texture_units[i];
187 glBindTexture(GL_TEXTURE_2D, texture_units[i].texture_2d); 187
188 if (texture_unit.texture_2d != cur_state_texture_unit.texture_2d) {
189 glActiveTexture(TextureUnits::MaxwellTexture(static_cast<int>(i)).Enum());
190 glBindTexture(GL_TEXTURE_2D, texture_unit.texture_2d);
188 } 191 }
189 if (texture_units[i].sampler != cur_state.texture_units[i].sampler) { 192 if (texture_unit.sampler != cur_state_texture_unit.sampler) {
190 glBindSampler(static_cast<GLuint>(i), texture_units[i].sampler); 193 glBindSampler(static_cast<GLuint>(i), texture_unit.sampler);
191 } 194 }
192 // Update the texture swizzle 195 // Update the texture swizzle
193 if (texture_units[i].swizzle.r != cur_state.texture_units[i].swizzle.r || 196 if (texture_unit.swizzle.r != cur_state_texture_unit.swizzle.r ||
194 texture_units[i].swizzle.g != cur_state.texture_units[i].swizzle.g || 197 texture_unit.swizzle.g != cur_state_texture_unit.swizzle.g ||
195 texture_units[i].swizzle.b != cur_state.texture_units[i].swizzle.b || 198 texture_unit.swizzle.b != cur_state_texture_unit.swizzle.b ||
196 texture_units[i].swizzle.a != cur_state.texture_units[i].swizzle.a) { 199 texture_unit.swizzle.a != cur_state_texture_unit.swizzle.a) {
197 std::array<GLint, 4> mask = {texture_units[i].swizzle.r, texture_units[i].swizzle.g, 200 std::array<GLint, 4> mask = {texture_unit.swizzle.r, texture_unit.swizzle.g,
198 texture_units[i].swizzle.b, texture_units[i].swizzle.a}; 201 texture_unit.swizzle.b, texture_unit.swizzle.a};
199 glTexParameteriv(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_RGBA, mask.data()); 202 glTexParameteriv(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_RGBA, mask.data());
200 } 203 }
201 } 204 }
202 205
203 // Constbuffers 206 // Constbuffers
204 for (u32 stage = 0; stage < draw.const_buffers.size(); ++stage) { 207 for (std::size_t stage = 0; stage < draw.const_buffers.size(); ++stage) {
205 for (u32 buffer_id = 0; buffer_id < draw.const_buffers[stage].size(); ++buffer_id) { 208 for (std::size_t buffer_id = 0; buffer_id < draw.const_buffers[stage].size(); ++buffer_id) {
206 auto& current = cur_state.draw.const_buffers[stage][buffer_id]; 209 auto& current = cur_state.draw.const_buffers[stage][buffer_id];
207 auto& new_state = draw.const_buffers[stage][buffer_id]; 210 auto& new_state = draw.const_buffers[stage][buffer_id];
208 if (current.enabled != new_state.enabled || current.bindpoint != new_state.bindpoint || 211 if (current.enabled != new_state.enabled || current.bindpoint != new_state.bindpoint ||