| Index: gpu/command_buffer/service/gles2_cmd_decoder.cc
|
| diff --git a/gpu/command_buffer/service/gles2_cmd_decoder.cc b/gpu/command_buffer/service/gles2_cmd_decoder.cc
|
| index b40198e87554e5fe84c5fc5c63779d68818cc142..1322fcfe0868d509eb91e5553933c1534627f27b 100644
|
| --- a/gpu/command_buffer/service/gles2_cmd_decoder.cc
|
| +++ b/gpu/command_buffer/service/gles2_cmd_decoder.cc
|
| @@ -2265,6 +2265,45 @@ bool GLES2DecoderImpl::Initialize(
|
| viewport_max_width_ = viewport_params[0];
|
| viewport_max_height_ = viewport_params[1];
|
|
|
| + // Set all the default state because some GL drivers get it wrong.
|
| + glActiveTexture(GL_TEXTURE0 + active_texture_unit_);
|
| + glLineWidth(1.0);
|
| + EnableDisable(GL_BLEND, enable_blend_);
|
| + glBlendColor(0.0f, 0.0, 0.0f, 0.0f);
|
| + glBlendFunc(GL_ONE, GL_ZERO);
|
| + glBlendEquation(GL_FUNC_ADD);
|
| + glBlendFuncSeparate(GL_ONE, GL_ZERO, GL_ONE, GL_ZERO);
|
| + glClearColor(clear_red_, clear_green_, clear_blue_, clear_alpha_);
|
| + glColorMask(mask_red_, mask_green_, mask_blue_, mask_alpha_);
|
| + EnableDisable(GL_CULL_FACE, enable_cull_face_);
|
| + glCullFace(GL_BACK);
|
| + glClearDepth(clear_depth_);
|
| + glDepthFunc(GL_LESS);
|
| + glDepthRange(0.0f, 1.0f);
|
| + EnableDisable(GL_DEPTH_TEST, enable_depth_test_);
|
| + glEnable(GL_DITHER);
|
| + glFrontFace(GL_CCW);
|
| + glHint(GL_GENERATE_MIPMAP_HINT, GL_DONT_CARE);
|
| + glLineWidth(1.0f);
|
| + glPixelStorei(GL_PACK_ALIGNMENT, pack_alignment_);
|
| + glPolygonOffset(0.0f, 0.0f);
|
| + glDisable(GL_POLYGON_OFFSET_FILL);
|
| + glSampleCoverage(1.0, false);
|
| + glScissor(viewport_x_, viewport_y_, viewport_width_, viewport_height_);
|
| + EnableDisable(GL_SCISSOR_TEST, enable_scissor_test_);
|
| + EnableDisable(GL_STENCIL_TEST, enable_stencil_test_);
|
| + glClearStencil(clear_stencil_);
|
| + glStencilFunc(GL_ALWAYS, 0, 0xFFFFFFFFU);
|
| + glStencilOp(GL_KEEP, GL_KEEP, GL_KEEP);
|
| + glStencilMaskSeparate(GL_FRONT, mask_stencil_front_);
|
| + glStencilMaskSeparate(GL_BACK, mask_stencil_back_);
|
| + glPixelStorei(GL_UNPACK_ALIGNMENT, unpack_alignment_);
|
| +
|
| + DoBindBuffer(GL_ARRAY_BUFFER, 0);
|
| + DoBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0);
|
| + DoBindFramebuffer(GL_FRAMEBUFFER, 0);
|
| + DoBindRenderbuffer(GL_RENDERBUFFER, 0);
|
| +
|
| return true;
|
| }
|
|
|
|
|