| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "gpu/command_buffer/service/gles2_cmd_decoder.h" | 5 #include "gpu/command_buffer/service/gles2_cmd_decoder.h" |
| 6 | 6 |
| 7 #include <limits.h> | 7 #include <limits.h> |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 #include <stdint.h> | 9 #include <stdint.h> |
| 10 #include <stdio.h> | 10 #include <stdio.h> |
| (...skipping 7343 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7354 return; | 7354 return; |
| 7355 } | 7355 } |
| 7356 glUniform4uiv(real_location, count, value); | 7356 glUniform4uiv(real_location, count, value); |
| 7357 } | 7357 } |
| 7358 | 7358 |
| 7359 void GLES2DecoderImpl::DoUniformMatrix2fv( | 7359 void GLES2DecoderImpl::DoUniformMatrix2fv( |
| 7360 GLint fake_location, GLsizei count, GLboolean transpose, | 7360 GLint fake_location, GLsizei count, GLboolean transpose, |
| 7361 const GLfloat* value) { | 7361 const GLfloat* value) { |
| 7362 GLenum type = 0; | 7362 GLenum type = 0; |
| 7363 GLint real_location = -1; | 7363 GLint real_location = -1; |
| 7364 if (transpose && !unsafe_es3_apis_enabled()) { |
| 7365 LOCAL_SET_GL_ERROR( |
| 7366 GL_INVALID_VALUE, "glUniformMatrix2fv", "transpose not FALSE"); |
| 7367 return; |
| 7368 } |
| 7364 if (!PrepForSetUniformByLocation(fake_location, | 7369 if (!PrepForSetUniformByLocation(fake_location, |
| 7365 "glUniformMatrix2fv", | 7370 "glUniformMatrix2fv", |
| 7366 Program::kUniformMatrix2f, | 7371 Program::kUniformMatrix2f, |
| 7367 &real_location, | 7372 &real_location, |
| 7368 &type, | 7373 &type, |
| 7369 &count)) { | 7374 &count)) { |
| 7370 return; | 7375 return; |
| 7371 } | 7376 } |
| 7372 glUniformMatrix2fv(real_location, count, transpose, value); | 7377 glUniformMatrix2fv(real_location, count, transpose, value); |
| 7373 } | 7378 } |
| 7374 | 7379 |
| 7375 void GLES2DecoderImpl::DoUniformMatrix3fv( | 7380 void GLES2DecoderImpl::DoUniformMatrix3fv( |
| 7376 GLint fake_location, GLsizei count, GLboolean transpose, | 7381 GLint fake_location, GLsizei count, GLboolean transpose, |
| 7377 const GLfloat* value) { | 7382 const GLfloat* value) { |
| 7378 GLenum type = 0; | 7383 GLenum type = 0; |
| 7379 GLint real_location = -1; | 7384 GLint real_location = -1; |
| 7385 if (transpose && !unsafe_es3_apis_enabled()) { |
| 7386 LOCAL_SET_GL_ERROR( |
| 7387 GL_INVALID_VALUE, "glUniformMatrix3fv", "transpose not FALSE"); |
| 7388 return; |
| 7389 } |
| 7380 if (!PrepForSetUniformByLocation(fake_location, | 7390 if (!PrepForSetUniformByLocation(fake_location, |
| 7381 "glUniformMatrix3fv", | 7391 "glUniformMatrix3fv", |
| 7382 Program::kUniformMatrix3f, | 7392 Program::kUniformMatrix3f, |
| 7383 &real_location, | 7393 &real_location, |
| 7384 &type, | 7394 &type, |
| 7385 &count)) { | 7395 &count)) { |
| 7386 return; | 7396 return; |
| 7387 } | 7397 } |
| 7388 glUniformMatrix3fv(real_location, count, transpose, value); | 7398 glUniformMatrix3fv(real_location, count, transpose, value); |
| 7389 } | 7399 } |
| 7390 | 7400 |
| 7391 void GLES2DecoderImpl::DoUniformMatrix4fv( | 7401 void GLES2DecoderImpl::DoUniformMatrix4fv( |
| 7392 GLint fake_location, GLsizei count, GLboolean transpose, | 7402 GLint fake_location, GLsizei count, GLboolean transpose, |
| 7393 const GLfloat* value) { | 7403 const GLfloat* value) { |
| 7394 GLenum type = 0; | 7404 GLenum type = 0; |
| 7395 GLint real_location = -1; | 7405 GLint real_location = -1; |
| 7406 if (transpose && !unsafe_es3_apis_enabled()) { |
| 7407 LOCAL_SET_GL_ERROR( |
| 7408 GL_INVALID_VALUE, "glUniformMatrix4fv", "transpose not FALSE"); |
| 7409 return; |
| 7410 } |
| 7396 if (!PrepForSetUniformByLocation(fake_location, | 7411 if (!PrepForSetUniformByLocation(fake_location, |
| 7397 "glUniformMatrix4fv", | 7412 "glUniformMatrix4fv", |
| 7398 Program::kUniformMatrix4f, | 7413 Program::kUniformMatrix4f, |
| 7399 &real_location, | 7414 &real_location, |
| 7400 &type, | 7415 &type, |
| 7401 &count)) { | 7416 &count)) { |
| 7402 return; | 7417 return; |
| 7403 } | 7418 } |
| 7404 glUniformMatrix4fv(real_location, count, transpose, value); | 7419 glUniformMatrix4fv(real_location, count, transpose, value); |
| 7405 } | 7420 } |
| (...skipping 8178 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 15584 } | 15599 } |
| 15585 | 15600 |
| 15586 // Include the auto-generated part of this file. We split this because it means | 15601 // Include the auto-generated part of this file. We split this because it means |
| 15587 // we can easily edit the non-auto generated parts right here in this file | 15602 // we can easily edit the non-auto generated parts right here in this file |
| 15588 // instead of having to edit some template or the code generator. | 15603 // instead of having to edit some template or the code generator. |
| 15589 #include "base/macros.h" | 15604 #include "base/macros.h" |
| 15590 #include "gpu/command_buffer/service/gles2_cmd_decoder_autogen.h" | 15605 #include "gpu/command_buffer/service/gles2_cmd_decoder_autogen.h" |
| 15591 | 15606 |
| 15592 } // namespace gles2 | 15607 } // namespace gles2 |
| 15593 } // namespace gpu | 15608 } // namespace gpu |
| OLD | NEW |