aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/gl/GrGpuGL.h
diff options
context:
space:
mode:
authorGravatar kkinnunen <kkinnunen@nvidia.com>2014-08-25 22:21:16 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2014-08-25 22:21:16 -0700
commitec56e4545477e30d4f165ca55ed99f90525c6c38 (patch)
tree78564548fe8d235934e217d95e6eb021644ba673 /src/gpu/gl/GrGpuGL.h
parentbc818f513be494fb3ab0c211892c7dc4cfb6a3d7 (diff)
Implement NV_path_rendering on OpenGL ES
Implement support for NV_path_rendering on OpenGL ES. Use glProgramPathFragmentInputGenNV function call instead of glPathTexGenNV to communicate transforms to fragment shader. The intention is that the NVPR paths will be drawn with the same shader program as non-NVPR geometry. For NVPR calls, the GPU will skip the vertex shader and just run the fragment shader. After program is linked, query the locations of the fragment shader inputs with glGetResourceLocation. The location will be used to set the transforms with glProgramPathFragmentInputGenNV. The functions and their workings are documented in: glProgramPathFragmentInputGenNV https://www.opengl.org/registry/specs/NV/path_rendering.txt (note: addition as of API version 1.3) glGetResourceLocation https://www.opengl.org/registry/specs/ARB/program_interface_query.txt http://www.opengl.org/registry/doc/glspec44.core.pdf (function is in core Open GL 4.4) Note: glProgramPathFragmentInputGenNV could be used also for OpenGL. However, using seems to trigger a bug in the driver. Disable this feature on OpenGL at least until the driver is fixed and released. The bug manifests in shadertext test, where the lower-left text pair is missing. Valgrind catches a bad read for the test and causes the context to OOM reproducibly. R=bsalomon@google.com, cdalton@nvidia.com, joshualitt@google.com, joshualitt@chromium.org Author: kkinnunen@nvidia.com Review URL: https://codereview.chromium.org/367643004
Diffstat (limited to 'src/gpu/gl/GrGpuGL.h')
-rw-r--r--src/gpu/gl/GrGpuGL.h7
1 files changed, 0 insertions, 7 deletions
diff --git a/src/gpu/gl/GrGpuGL.h b/src/gpu/gl/GrGpuGL.h
index 110a6671ba..94fd307f6d 100644
--- a/src/gpu/gl/GrGpuGL.h
+++ b/src/gpu/gl/GrGpuGL.h
@@ -52,13 +52,6 @@ public:
// state.
void bindTexture(int unitIdx, const GrTextureParams& params, GrGLTexture* texture);
- bool shouldUseFixedFunctionTexturing() const {
- // At the moment non-fixed-function texturing is not implemented
- // even though the GrGLPathRendering would support it. Thus just
- // return the below.
- return this->glCaps().pathRenderingSupport();
- }
-
bool programUnitTest(int maxStages);
// GrGpu overrides