summaryrefslogtreecommitdiffstats
path: root/gpu/blink
diff options
context:
space:
mode:
authorzmo <zmo@chromium.org>2015-06-23 13:41:51 -0700
committerCommit bot <commit-bot@chromium.org>2015-06-23 20:43:31 +0000
commitdbea74da580a7bf0dbb10fc3af32f7ae24d2794b (patch)
tree6417f8f922d60529e75a16b34e7f69e721fe84bb /gpu/blink
parente77db02268ba0afea2e60b0822b264ad841d37b3 (diff)
downloadchromium_src-dbea74da580a7bf0dbb10fc3af32f7ae24d2794b.zip
chromium_src-dbea74da580a7bf0dbb10fc3af32f7ae24d2794b.tar.gz
chromium_src-dbea74da580a7bf0dbb10fc3af32f7ae24d2794b.tar.bz2
Remove Chromium specific PixelStorei params in GPU command buffer.
Including: UNPACK_FLIP_Y, UNPACK_PREMULTIPLY_ALPHA, UNPACK_UNMULTIPLY_ALPHA They are used by Copy{Sub}TextureCHROMIUM only, so we could just add them as command arguments. BUG=502491 TEST=gpu_unittests, webgl_conformance tests R=piman@chromium.org TBR=jamesr@chromium.org CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1189303003 Cr-Commit-Position: refs/heads/master@{#335742}
Diffstat (limited to 'gpu/blink')
-rw-r--r--gpu/blink/webgraphicscontext3d_impl.cc64
-rw-r--r--gpu/blink/webgraphicscontext3d_impl.h26
2 files changed, 77 insertions, 13 deletions
diff --git a/gpu/blink/webgraphicscontext3d_impl.cc b/gpu/blink/webgraphicscontext3d_impl.cc
index 139803e..fb463b7 100644
--- a/gpu/blink/webgraphicscontext3d_impl.cc
+++ b/gpu/blink/webgraphicscontext3d_impl.cc
@@ -71,6 +71,30 @@ void WebGraphicsContext3DErrorMessageCallback::OnErrorMessage(
graphics_context_->OnErrorMessage(msg, id);
}
+void WebGraphicsContext3DImpl::copyTextureCHROMIUM(
+ blink::WGC3Denum target,
+ blink::WebGLId source_id,
+ blink::WebGLId dest_id,
+ blink::WGC3Denum internal_format,
+ blink::WGC3Denum dest_type) {
+ copyTextureCHROMIUM(target, source_id, dest_id, internal_format, dest_type,
+ false, false, false);
+}
+
+void WebGraphicsContext3DImpl::copySubTextureCHROMIUM(
+ blink::WGC3Denum target,
+ blink::WebGLId source_id,
+ blink::WebGLId dest_id,
+ blink::WGC3Dint xoffset,
+ blink::WGC3Dint yoffset,
+ blink::WGC3Dint x,
+ blink::WGC3Dint y,
+ blink::WGC3Dsizei width,
+ blink::WGC3Dsizei height) {
+ copySubTextureCHROMIUM(target, source_id, dest_id, xoffset, yoffset,
+ x, y, width, height, false, false, false);
+}
+
// Helper macros to reduce the amount of code.
#define DELEGATE_TO_GL(name, glname) \
@@ -181,6 +205,14 @@ void WebGraphicsContext3DImpl::name(t1 a1, t2 a2, t3 a3, t4 a4, t5 a5, \
gl_->glname(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11); \
}
+#define DELEGATE_TO_GL_12(name, glname, t1, t2, t3, t4, t5, t6, t7, t8, \
+ t9, t10, t11, t12) \
+void WebGraphicsContext3DImpl::name(t1 a1, t2 a2, t3 a3, t4 a4, t5 a5, \
+ t6 a6, t7 a7, t8 a8, t9 a9, t10 a10,\
+ t11 a11, t12 a12) { \
+ gl_->glname(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12); \
+}
+
WebGraphicsContext3DImpl::WebGraphicsContext3DImpl()
: initialized_(false),
initialize_failed_(false),
@@ -818,25 +850,31 @@ DELEGATE_TO_GL_3(getQueryivEXT, GetQueryivEXT, WGC3Denum, WGC3Denum, WGC3Dint*)
DELEGATE_TO_GL_3(getQueryObjectuivEXT, GetQueryObjectuivEXT,
WebGLId, WGC3Denum, WGC3Duint*)
-DELEGATE_TO_GL_5(copyTextureCHROMIUM,
+DELEGATE_TO_GL_8(copyTextureCHROMIUM,
CopyTextureCHROMIUM,
WGC3Denum,
WebGLId,
WebGLId,
WGC3Denum,
- WGC3Denum);
-
-DELEGATE_TO_GL_9(copySubTextureCHROMIUM,
- CopySubTextureCHROMIUM,
WGC3Denum,
- WebGLId,
- WebGLId,
- WGC3Dint,
- WGC3Dint,
- WGC3Dint,
- WGC3Dint,
- WGC3Dsizei,
- WGC3Dsizei);
+ WGC3Dboolean,
+ WGC3Dboolean,
+ WGC3Dboolean);
+
+DELEGATE_TO_GL_12(copySubTextureCHROMIUM,
+ CopySubTextureCHROMIUM,
+ WGC3Denum,
+ WebGLId,
+ WebGLId,
+ WGC3Dint,
+ WGC3Dint,
+ WGC3Dint,
+ WGC3Dint,
+ WGC3Dsizei,
+ WGC3Dsizei,
+ WGC3Dboolean,
+ WGC3Dboolean,
+ WGC3Dboolean);
DELEGATE_TO_GL_3(bindUniformLocationCHROMIUM, BindUniformLocationCHROMIUM,
WebGLId, WGC3Dint, const WGC3Dchar*)
diff --git a/gpu/blink/webgraphicscontext3d_impl.h b/gpu/blink/webgraphicscontext3d_impl.h
index c2f3c88..1e3fa1c 100644
--- a/gpu/blink/webgraphicscontext3d_impl.h
+++ b/gpu/blink/webgraphicscontext3d_impl.h
@@ -518,6 +518,8 @@ class GPU_BLINK_EXPORT WebGraphicsContext3DImpl
blink::WGC3Denum pname,
blink::WGC3Duint* params);
+ // TODO(zmo): Remove the following two functions when blink side switch
+ // over to the correct version.
void copyTextureCHROMIUM(blink::WGC3Denum target,
blink::WebGLId source_id,
blink::WebGLId dest_id,
@@ -534,6 +536,30 @@ class GPU_BLINK_EXPORT WebGraphicsContext3DImpl
blink::WGC3Dsizei width,
blink::WGC3Dsizei height) override;
+ void copyTextureCHROMIUM(
+ blink::WGC3Denum target,
+ blink::WebGLId source_id,
+ blink::WebGLId dest_id,
+ blink::WGC3Denum internal_format,
+ blink::WGC3Denum dest_type,
+ blink::WGC3Dboolean unpack_flip_y,
+ blink::WGC3Dboolean unpack_premultiply_alpha,
+ blink::WGC3Dboolean unpack_unmultiply_alpha);
+
+ void copySubTextureCHROMIUM(
+ blink::WGC3Denum target,
+ blink::WebGLId source_id,
+ blink::WebGLId dest_id,
+ blink::WGC3Dint xoffset,
+ blink::WGC3Dint yoffset,
+ blink::WGC3Dint x,
+ blink::WGC3Dint y,
+ blink::WGC3Dsizei width,
+ blink::WGC3Dsizei height,
+ blink::WGC3Dboolean unpack_flip_y,
+ blink::WGC3Dboolean unpack_premultiply_alpha,
+ blink::WGC3Dboolean unpack_unmultiply_alpha);
+
virtual void bindUniformLocationCHROMIUM(blink::WebGLId program,
blink::WGC3Dint location,
const blink::WGC3Dchar* uniform);