| 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 "base/atomicops.h" | 7 #include "base/atomicops.h" |
| 8 #include "gpu/command_buffer/common/gles2_cmd_format.h" | 8 #include "gpu/command_buffer/common/gles2_cmd_format.h" |
| 9 #include "gpu/command_buffer/common/gles2_cmd_utils.h" | 9 #include "gpu/command_buffer/common/gles2_cmd_utils.h" |
| 10 #include "gpu/command_buffer/common/id_allocator.h" | 10 #include "gpu/command_buffer/common/id_allocator.h" |
| (...skipping 2298 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2309 *gl_, ReadPixels(read_x, yy, read_width, 1, | 2309 *gl_, ReadPixels(read_x, yy, read_width, 1, |
| 2310 kFormat, GL_UNSIGNED_BYTE, _)) | 2310 kFormat, GL_UNSIGNED_BYTE, _)) |
| 2311 .WillOnce(Invoke(&emu, &ReadPixelsEmulator::ReadPixels)) | 2311 .WillOnce(Invoke(&emu, &ReadPixelsEmulator::ReadPixels)) |
| 2312 .RetiresOnSaturation(); | 2312 .RetiresOnSaturation(); |
| 2313 } | 2313 } |
| 2314 } | 2314 } |
| 2315 ReadPixels cmd; | 2315 ReadPixels cmd; |
| 2316 cmd.Init(in_read_x, in_read_y, in_read_width, in_read_height, | 2316 cmd.Init(in_read_x, in_read_y, in_read_width, in_read_height, |
| 2317 kFormat, GL_UNSIGNED_BYTE, | 2317 kFormat, GL_UNSIGNED_BYTE, |
| 2318 pixels_shm_id, pixels_shm_offset, | 2318 pixels_shm_id, pixels_shm_offset, |
| 2319 result_shm_id, result_shm_offset); | 2319 result_shm_id, result_shm_offset, |
| 2320 false); |
| 2320 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 2321 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 2321 | 2322 |
| 2322 GLint unpadded_row_size = emu.ComputeImageDataSize(in_read_width, 1); | 2323 GLint unpadded_row_size = emu.ComputeImageDataSize(in_read_width, 1); |
| 2323 scoped_ptr<int8[]> zero(new int8[unpadded_row_size]); | 2324 scoped_ptr<int8[]> zero(new int8[unpadded_row_size]); |
| 2324 scoped_ptr<int8[]> pack(new int8[kPackAlignment]); | 2325 scoped_ptr<int8[]> pack(new int8[kPackAlignment]); |
| 2325 memset(zero.get(), 0, unpadded_row_size); | 2326 memset(zero.get(), 0, unpadded_row_size); |
| 2326 memset(pack.get(), kInitialMemoryValue, kPackAlignment); | 2327 memset(pack.get(), kInitialMemoryValue, kPackAlignment); |
| 2327 for (GLint yy = 0; yy < in_read_height; ++yy) { | 2328 for (GLint yy = 0; yy < in_read_height; ++yy) { |
| 2328 const int8* row = static_cast<const int8*>( | 2329 const int8* row = static_cast<const int8*>( |
| 2329 emu.ComputePackAlignmentAddress(0, yy, in_read_width, dest)); | 2330 emu.ComputePackAlignmentAddress(0, yy, in_read_width, dest)); |
| (...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2386 EXPECT_CALL(*gl_, GetError()) | 2387 EXPECT_CALL(*gl_, GetError()) |
| 2387 .WillOnce(Return(GL_NO_ERROR)) | 2388 .WillOnce(Return(GL_NO_ERROR)) |
| 2388 .WillOnce(Return(GL_NO_ERROR)) | 2389 .WillOnce(Return(GL_NO_ERROR)) |
| 2389 .RetiresOnSaturation(); | 2390 .RetiresOnSaturation(); |
| 2390 EXPECT_CALL( | 2391 EXPECT_CALL( |
| 2391 *gl_, ReadPixels(0, 0, kWidth, kHeight, GL_RGB, GL_UNSIGNED_BYTE, _)) | 2392 *gl_, ReadPixels(0, 0, kWidth, kHeight, GL_RGB, GL_UNSIGNED_BYTE, _)) |
| 2392 .WillOnce(Invoke(&emu, &ReadPixelsEmulator::ReadPixels)); | 2393 .WillOnce(Invoke(&emu, &ReadPixelsEmulator::ReadPixels)); |
| 2393 ReadPixels cmd; | 2394 ReadPixels cmd; |
| 2394 cmd.Init(0, 0, kWidth, kHeight, GL_RGB, GL_UNSIGNED_BYTE, | 2395 cmd.Init(0, 0, kWidth, kHeight, GL_RGB, GL_UNSIGNED_BYTE, |
| 2395 pixels_shm_id, pixels_shm_offset, | 2396 pixels_shm_id, pixels_shm_offset, |
| 2396 result_shm_id, result_shm_offset); | 2397 result_shm_id, result_shm_offset, |
| 2398 false); |
| 2397 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 2399 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 2398 for (GLint yy = 0; yy < kHeight; ++yy) { | 2400 for (GLint yy = 0; yy < kHeight; ++yy) { |
| 2399 EXPECT_TRUE(emu.CompareRowSegment( | 2401 EXPECT_TRUE(emu.CompareRowSegment( |
| 2400 0, yy, kWidth, | 2402 0, yy, kWidth, |
| 2401 emu.ComputePackAlignmentAddress(0, yy, kWidth, dest))); | 2403 emu.ComputePackAlignmentAddress(0, yy, kWidth, dest))); |
| 2402 } | 2404 } |
| 2403 } | 2405 } |
| 2404 | 2406 |
| 2405 TEST_F(GLES2DecoderRGBBackbufferTest, ReadPixelsNoAlphaBackbuffer) { | 2407 TEST_F(GLES2DecoderRGBBackbufferTest, ReadPixelsNoAlphaBackbuffer) { |
| 2406 const GLsizei kWidth = 3; | 2408 const GLsizei kWidth = 3; |
| (...skipping 26 matching lines...) Expand all Loading... |
| 2433 EXPECT_CALL(*gl_, GetError()) | 2435 EXPECT_CALL(*gl_, GetError()) |
| 2434 .WillOnce(Return(GL_NO_ERROR)) | 2436 .WillOnce(Return(GL_NO_ERROR)) |
| 2435 .WillOnce(Return(GL_NO_ERROR)) | 2437 .WillOnce(Return(GL_NO_ERROR)) |
| 2436 .RetiresOnSaturation(); | 2438 .RetiresOnSaturation(); |
| 2437 EXPECT_CALL( | 2439 EXPECT_CALL( |
| 2438 *gl_, ReadPixels(0, 0, kWidth, kHeight, GL_RGBA, GL_UNSIGNED_BYTE, _)) | 2440 *gl_, ReadPixels(0, 0, kWidth, kHeight, GL_RGBA, GL_UNSIGNED_BYTE, _)) |
| 2439 .WillOnce(Invoke(&emu, &ReadPixelsEmulator::ReadPixels)); | 2441 .WillOnce(Invoke(&emu, &ReadPixelsEmulator::ReadPixels)); |
| 2440 ReadPixels cmd; | 2442 ReadPixels cmd; |
| 2441 cmd.Init(0, 0, kWidth, kHeight, GL_RGBA, GL_UNSIGNED_BYTE, | 2443 cmd.Init(0, 0, kWidth, kHeight, GL_RGBA, GL_UNSIGNED_BYTE, |
| 2442 pixels_shm_id, pixels_shm_offset, | 2444 pixels_shm_id, pixels_shm_offset, |
| 2443 result_shm_id, result_shm_offset); | 2445 result_shm_id, result_shm_offset, |
| 2446 false); |
| 2444 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 2447 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 2445 for (GLint yy = 0; yy < kHeight; ++yy) { | 2448 for (GLint yy = 0; yy < kHeight; ++yy) { |
| 2446 EXPECT_TRUE(emu.CompareRowSegment( | 2449 EXPECT_TRUE(emu.CompareRowSegment( |
| 2447 0, yy, kWidth, | 2450 0, yy, kWidth, |
| 2448 emu.ComputePackAlignmentAddress(0, yy, kWidth, dest))); | 2451 emu.ComputePackAlignmentAddress(0, yy, kWidth, dest))); |
| 2449 } | 2452 } |
| 2450 } | 2453 } |
| 2451 | 2454 |
| 2452 TEST_F(GLES2DecoderTest, ReadPixelsOutOfRange) { | 2455 TEST_F(GLES2DecoderTest, ReadPixelsOutOfRange) { |
| 2453 static GLint tests[][4] = { | 2456 static GLint tests[][4] = { |
| (...skipping 16 matching lines...) Expand all Loading... |
| 2470 typedef ReadPixels::Result Result; | 2473 typedef ReadPixels::Result Result; |
| 2471 Result* result = GetSharedMemoryAs<Result*>(); | 2474 Result* result = GetSharedMemoryAs<Result*>(); |
| 2472 uint32 result_shm_id = kSharedMemoryId; | 2475 uint32 result_shm_id = kSharedMemoryId; |
| 2473 uint32 result_shm_offset = kSharedMemoryOffset; | 2476 uint32 result_shm_offset = kSharedMemoryOffset; |
| 2474 uint32 pixels_shm_id = kSharedMemoryId; | 2477 uint32 pixels_shm_id = kSharedMemoryId; |
| 2475 uint32 pixels_shm_offset = kSharedMemoryOffset + sizeof(*result); | 2478 uint32 pixels_shm_offset = kSharedMemoryOffset + sizeof(*result); |
| 2476 EXPECT_CALL(*gl_, ReadPixels(_, _, _, _, _, _, _)).Times(0); | 2479 EXPECT_CALL(*gl_, ReadPixels(_, _, _, _, _, _, _)).Times(0); |
| 2477 ReadPixels cmd; | 2480 ReadPixels cmd; |
| 2478 cmd.Init(0, 0, -1, 1, GL_RGB, GL_UNSIGNED_BYTE, | 2481 cmd.Init(0, 0, -1, 1, GL_RGB, GL_UNSIGNED_BYTE, |
| 2479 pixels_shm_id, pixels_shm_offset, | 2482 pixels_shm_id, pixels_shm_offset, |
| 2480 result_shm_id, result_shm_offset); | 2483 result_shm_id, result_shm_offset, |
| 2484 false); |
| 2481 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 2485 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 2482 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); | 2486 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); |
| 2483 cmd.Init(0, 0, 1, -1, GL_RGB, GL_UNSIGNED_BYTE, | 2487 cmd.Init(0, 0, 1, -1, GL_RGB, GL_UNSIGNED_BYTE, |
| 2484 pixels_shm_id, pixels_shm_offset, | 2488 pixels_shm_id, pixels_shm_offset, |
| 2485 result_shm_id, result_shm_offset); | 2489 result_shm_id, result_shm_offset, |
| 2490 false); |
| 2486 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 2491 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 2487 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); | 2492 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); |
| 2488 cmd.Init(0, 0, 1, 1, GL_RGB, GL_INT, | 2493 cmd.Init(0, 0, 1, 1, GL_RGB, GL_INT, |
| 2489 pixels_shm_id, pixels_shm_offset, | 2494 pixels_shm_id, pixels_shm_offset, |
| 2490 result_shm_id, result_shm_offset); | 2495 result_shm_id, result_shm_offset, |
| 2496 false); |
| 2491 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 2497 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 2492 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 2498 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 2493 cmd.Init(0, 0, 1, 1, GL_RGB, GL_UNSIGNED_BYTE, | 2499 cmd.Init(0, 0, 1, 1, GL_RGB, GL_UNSIGNED_BYTE, |
| 2494 kInvalidSharedMemoryId, pixels_shm_offset, | 2500 kInvalidSharedMemoryId, pixels_shm_offset, |
| 2495 result_shm_id, result_shm_offset); | 2501 result_shm_id, result_shm_offset, |
| 2502 false); |
| 2496 EXPECT_NE(error::kNoError, ExecuteCmd(cmd)); | 2503 EXPECT_NE(error::kNoError, ExecuteCmd(cmd)); |
| 2497 cmd.Init(0, 0, 1, 1, GL_RGB, GL_UNSIGNED_BYTE, | 2504 cmd.Init(0, 0, 1, 1, GL_RGB, GL_UNSIGNED_BYTE, |
| 2498 pixels_shm_id, kInvalidSharedMemoryOffset, | 2505 pixels_shm_id, kInvalidSharedMemoryOffset, |
| 2499 result_shm_id, result_shm_offset); | 2506 result_shm_id, result_shm_offset, |
| 2507 false); |
| 2500 EXPECT_NE(error::kNoError, ExecuteCmd(cmd)); | 2508 EXPECT_NE(error::kNoError, ExecuteCmd(cmd)); |
| 2501 cmd.Init(0, 0, 1, 1, GL_RGB, GL_UNSIGNED_BYTE, | 2509 cmd.Init(0, 0, 1, 1, GL_RGB, GL_UNSIGNED_BYTE, |
| 2502 pixels_shm_id, pixels_shm_offset, | 2510 pixels_shm_id, pixels_shm_offset, |
| 2503 kInvalidSharedMemoryId, result_shm_offset); | 2511 kInvalidSharedMemoryId, result_shm_offset, |
| 2512 false); |
| 2504 EXPECT_NE(error::kNoError, ExecuteCmd(cmd)); | 2513 EXPECT_NE(error::kNoError, ExecuteCmd(cmd)); |
| 2505 cmd.Init(0, 0, 1, 1, GL_RGB, GL_UNSIGNED_BYTE, | 2514 cmd.Init(0, 0, 1, 1, GL_RGB, GL_UNSIGNED_BYTE, |
| 2506 pixels_shm_id, pixels_shm_offset, | 2515 pixels_shm_id, pixels_shm_offset, |
| 2507 result_shm_id, kInvalidSharedMemoryOffset); | 2516 result_shm_id, kInvalidSharedMemoryOffset, |
| 2517 false); |
| 2508 EXPECT_NE(error::kNoError, ExecuteCmd(cmd)); | 2518 EXPECT_NE(error::kNoError, ExecuteCmd(cmd)); |
| 2509 } | 2519 } |
| 2510 | 2520 |
| 2511 TEST_F(GLES2DecoderTest, BindAttribLocation) { | 2521 TEST_F(GLES2DecoderTest, BindAttribLocation) { |
| 2512 const GLint kLocation = 2; | 2522 const GLint kLocation = 2; |
| 2513 const char* kName = "testing"; | 2523 const char* kName = "testing"; |
| 2514 const uint32 kNameSize = strlen(kName); | 2524 const uint32 kNameSize = strlen(kName); |
| 2515 EXPECT_CALL( | 2525 EXPECT_CALL( |
| 2516 *gl_, BindAttribLocation(kServiceProgramId, kLocation, StrEq(kName))) | 2526 *gl_, BindAttribLocation(kServiceProgramId, kLocation, StrEq(kName))) |
| 2517 .Times(1); | 2527 .Times(1); |
| (...skipping 2407 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4925 .WillOnce(Return(GL_NO_ERROR)) | 4935 .WillOnce(Return(GL_NO_ERROR)) |
| 4926 .WillOnce(Return(GL_OUT_OF_MEMORY)) | 4936 .WillOnce(Return(GL_OUT_OF_MEMORY)) |
| 4927 .RetiresOnSaturation(); | 4937 .RetiresOnSaturation(); |
| 4928 EXPECT_CALL( | 4938 EXPECT_CALL( |
| 4929 *gl_, ReadPixels(x, y, width, height, kFormat, GL_UNSIGNED_BYTE, _)) | 4939 *gl_, ReadPixels(x, y, width, height, kFormat, GL_UNSIGNED_BYTE, _)) |
| 4930 .Times(1) | 4940 .Times(1) |
| 4931 .RetiresOnSaturation(); | 4941 .RetiresOnSaturation(); |
| 4932 ReadPixels cmd; | 4942 ReadPixels cmd; |
| 4933 cmd.Init(x, y, width, height, kFormat, GL_UNSIGNED_BYTE, | 4943 cmd.Init(x, y, width, height, kFormat, GL_UNSIGNED_BYTE, |
| 4934 pixels_shm_id, pixels_shm_offset, | 4944 pixels_shm_id, pixels_shm_offset, |
| 4935 result_shm_id, result_shm_offset); | 4945 result_shm_id, result_shm_offset, |
| 4946 false); |
| 4936 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 4947 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 4937 EXPECT_EQ(GL_OUT_OF_MEMORY, GetGLError()); | 4948 EXPECT_EQ(GL_OUT_OF_MEMORY, GetGLError()); |
| 4938 } | 4949 } |
| 4939 | 4950 |
| 4940 static bool ValueInArray(GLint value, GLint* array, GLint count) { | 4951 static bool ValueInArray(GLint value, GLint* array, GLint count) { |
| 4941 for (GLint ii = 0; ii < count; ++ii) { | 4952 for (GLint ii = 0; ii < count; ++ii) { |
| 4942 if (array[ii] == value) { | 4953 if (array[ii] == value) { |
| 4943 return true; | 4954 return true; |
| 4944 } | 4955 } |
| 4945 } | 4956 } |
| (...skipping 1695 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6641 .Times(1) | 6652 .Times(1) |
| 6642 .RetiresOnSaturation(); | 6653 .RetiresOnSaturation(); |
| 6643 typedef ReadPixels::Result Result; | 6654 typedef ReadPixels::Result Result; |
| 6644 Result* result = GetSharedMemoryAs<Result*>(); | 6655 Result* result = GetSharedMemoryAs<Result*>(); |
| 6645 uint32 result_shm_id = kSharedMemoryId; | 6656 uint32 result_shm_id = kSharedMemoryId; |
| 6646 uint32 result_shm_offset = kSharedMemoryOffset; | 6657 uint32 result_shm_offset = kSharedMemoryOffset; |
| 6647 uint32 pixels_shm_id = kSharedMemoryId; | 6658 uint32 pixels_shm_id = kSharedMemoryId; |
| 6648 uint32 pixels_shm_offset = kSharedMemoryOffset + sizeof(*result); | 6659 uint32 pixels_shm_offset = kSharedMemoryOffset + sizeof(*result); |
| 6649 ReadPixels cmd; | 6660 ReadPixels cmd; |
| 6650 cmd.Init(0, 0, 1, 1, GL_RGBA, GL_UNSIGNED_BYTE, | 6661 cmd.Init(0, 0, 1, 1, GL_RGBA, GL_UNSIGNED_BYTE, |
| 6651 pixels_shm_id, pixels_shm_offset, | 6662 pixels_shm_id, pixels_shm_offset, |
| 6652 result_shm_id, result_shm_offset); | 6663 result_shm_id, result_shm_offset, |
| 6664 false); |
| 6653 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 6665 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 6654 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 6666 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 6655 } | 6667 } |
| 6656 | 6668 |
| 6657 TEST_F(GLES2DecoderManualInitTest, | 6669 TEST_F(GLES2DecoderManualInitTest, |
| 6658 UnClearedAttachmentsGetClearedOnReadPixelsAndDrawBufferGetsRestored) { | 6670 UnClearedAttachmentsGetClearedOnReadPixelsAndDrawBufferGetsRestored) { |
| 6659 InitDecoder( | 6671 InitDecoder( |
| 6660 "GL_EXT_framebuffer_multisample", // extensions | 6672 "GL_EXT_framebuffer_multisample", // extensions |
| 6661 false, // has alpha | 6673 false, // has alpha |
| 6662 false, // has depth | 6674 false, // has depth |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6701 EXPECT_CALL(*gl_, ReadPixels(0, 0, 1, 1, GL_RGBA, GL_UNSIGNED_BYTE, _)) | 6713 EXPECT_CALL(*gl_, ReadPixels(0, 0, 1, 1, GL_RGBA, GL_UNSIGNED_BYTE, _)) |
| 6702 .Times(1) | 6714 .Times(1) |
| 6703 .RetiresOnSaturation(); | 6715 .RetiresOnSaturation(); |
| 6704 typedef ReadPixels::Result Result; | 6716 typedef ReadPixels::Result Result; |
| 6705 uint32 result_shm_id = kSharedMemoryId; | 6717 uint32 result_shm_id = kSharedMemoryId; |
| 6706 uint32 result_shm_offset = kSharedMemoryOffset; | 6718 uint32 result_shm_offset = kSharedMemoryOffset; |
| 6707 uint32 pixels_shm_id = kSharedMemoryId; | 6719 uint32 pixels_shm_id = kSharedMemoryId; |
| 6708 uint32 pixels_shm_offset = kSharedMemoryOffset + sizeof(Result); | 6720 uint32 pixels_shm_offset = kSharedMemoryOffset + sizeof(Result); |
| 6709 ReadPixels cmd; | 6721 ReadPixels cmd; |
| 6710 cmd.Init(0, 0, 1, 1, GL_RGBA, GL_UNSIGNED_BYTE, | 6722 cmd.Init(0, 0, 1, 1, GL_RGBA, GL_UNSIGNED_BYTE, |
| 6711 pixels_shm_id, pixels_shm_offset, | 6723 pixels_shm_id, pixels_shm_offset, |
| 6712 result_shm_id, result_shm_offset); | 6724 result_shm_id, result_shm_offset, |
| 6725 false); |
| 6713 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 6726 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 6714 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 6727 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 6715 } | 6728 } |
| 6716 | 6729 |
| 6717 TEST_F(GLES2DecoderWithShaderTest, DrawClearsAfterRenderbufferStorageInFBO) { | 6730 TEST_F(GLES2DecoderWithShaderTest, DrawClearsAfterRenderbufferStorageInFBO) { |
| 6718 SetupTexture(); | 6731 SetupTexture(); |
| 6719 DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_, | 6732 DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_, |
| 6720 kServiceRenderbufferId); | 6733 kServiceRenderbufferId); |
| 6721 DoBindFramebuffer(GL_FRAMEBUFFER, client_framebuffer_id_, | 6734 DoBindFramebuffer(GL_FRAMEBUFFER, client_framebuffer_id_, |
| 6722 kServiceFramebufferId); | 6735 kServiceFramebufferId); |
| (...skipping 1919 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8642 // TODO(gman): TexImage2DImmediate | 8655 // TODO(gman): TexImage2DImmediate |
| 8643 | 8656 |
| 8644 // TODO(gman): TexSubImage2DImmediate | 8657 // TODO(gman): TexSubImage2DImmediate |
| 8645 | 8658 |
| 8646 // TODO(gman): UseProgram | 8659 // TODO(gman): UseProgram |
| 8647 | 8660 |
| 8648 // TODO(gman): SwapBuffers | 8661 // TODO(gman): SwapBuffers |
| 8649 | 8662 |
| 8650 } // namespace gles2 | 8663 } // namespace gles2 |
| 8651 } // namespace gpu | 8664 } // namespace gpu |
| OLD | NEW |