aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu
diff options
context:
space:
mode:
authorGravatar jvanverth <jvanverth@google.com>2015-07-02 12:53:27 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2015-07-02 12:53:27 -0700
commit2853fe409efb2da9245d31a65a63ae3d8753931f (patch)
tree8a50bb2beb556378041501b80e76085629944436 /src/gpu
parent94a2fbc6cf7cc14d7e6149eb22455db6aca06b8f (diff)
Revert of Implement support for CHROMIUM_path_rendering pseudo extension (patchset #4 id:60001 of https://codereview.chromium.org/1192663002/)
Reason for revert: DEPS roll failing Original issue's description: > Implement support for CHROMIUM_path_rendering pseudo extension > > Implement support for path rendering in Chromium through > CHROMIUM_path_rendering pseudo extension. > > The extension defines a new pseudo-gl function, > BindFragmentInputLocation. This behaves similarly to the > BindUniformLocation pseudo-gl function. The idea is to assign fragment > input location to a fragment input before linking the program. > > BUG=chromium:344330 > > Committed: https://skia.googlesource.com/skia/+/eeef46d181f9f8db388ecea81df699fc1b3c9280 TBR=bsalomon@google.com,joshualitt@google.com,kkinnunen@nvidia.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:344330 Review URL: https://codereview.chromium.org/1223673002
Diffstat (limited to 'src/gpu')
-rw-r--r--src/gpu/gl/GrGLCaps.cpp8
-rw-r--r--src/gpu/gl/GrGLInterface.cpp8
-rw-r--r--src/gpu/gl/GrGLPathRendering.cpp3
-rw-r--r--src/gpu/gl/GrGLPathRendering.h12
-rw-r--r--src/gpu/gl/builders/GrGLPathProgramBuilder.cpp18
-rw-r--r--src/gpu/gl/builders/GrGLPathProgramBuilder.h1
-rw-r--r--src/gpu/gl/builders/GrGLProgramBuilder.h2
7 files changed, 5 insertions, 47 deletions
diff --git a/src/gpu/gl/GrGLCaps.cpp b/src/gpu/gl/GrGLCaps.cpp
index dc0cf2cd59..539212c3a5 100644
--- a/src/gpu/gl/GrGLCaps.cpp
+++ b/src/gpu/gl/GrGLCaps.cpp
@@ -464,20 +464,16 @@ void GrGLCaps::init(const GrContextOptions& contextOptions,
}
bool GrGLCaps::hasPathRenderingSupport(const GrGLContextInfo& ctxInfo, const GrGLInterface* gli) {
- bool hasChromiumPathRendering = ctxInfo.hasExtension("GL_CHROMIUM_path_rendering");
-
- if (!(ctxInfo.hasExtension("GL_NV_path_rendering") || hasChromiumPathRendering)) {
+ if (!ctxInfo.hasExtension("GL_NV_path_rendering")) {
return false;
}
-
if (kGL_GrGLStandard == ctxInfo.standard()) {
if (ctxInfo.version() < GR_GL_VER(4, 3) &&
!ctxInfo.hasExtension("GL_ARB_program_interface_query")) {
return false;
}
} else {
- if (!hasChromiumPathRendering &&
- ctxInfo.version() < GR_GL_VER(3, 1)) {
+ if (ctxInfo.version() < GR_GL_VER(3, 1)) {
return false;
}
}
diff --git a/src/gpu/gl/GrGLInterface.cpp b/src/gpu/gl/GrGLInterface.cpp
index 9f58c73221..56f1e59275 100644
--- a/src/gpu/gl/GrGLInterface.cpp
+++ b/src/gpu/gl/GrGLInterface.cpp
@@ -59,7 +59,6 @@ const GrGLInterface* GrGLInterfaceRemoveNVPR(const GrGLInterface* interface) {
newInterface->fFunctions.fStencilThenCoverFillPathInstanced = NULL;
newInterface->fFunctions.fStencilThenCoverStrokePathInstanced = NULL;
newInterface->fFunctions.fProgramPathFragmentInputGen = NULL;
- newInterface->fFunctions.fBindFragmentInputLocation = NULL;
return newInterface;
}
@@ -484,7 +483,7 @@ bool GrGLInterface::validate() const {
#endif
}
- if (fExtensions.has("GL_NV_path_rendering") || fExtensions.has("GL_CHROMIUM_path_rendering")) {
+ if (fExtensions.has("GL_NV_path_rendering")) {
if (NULL == fFunctions.fMatrixLoadf ||
NULL == fFunctions.fMatrixLoadIdentity ||
NULL == fFunctions.fPathCommands ||
@@ -516,11 +515,6 @@ bool GrGLInterface::validate() const {
) {
RETURN_FALSE_INTERFACE
}
- if (fExtensions.has("GL_CHROMIUM_path_rendering")) {
- if (NULL == fFunctions.fBindFragmentInputLocation) {
- RETURN_FALSE_INTERFACE
- }
- }
}
if (fExtensions.has("GL_EXT_raster_multisample")) {
diff --git a/src/gpu/gl/GrGLPathRendering.cpp b/src/gpu/gl/GrGLPathRendering.cpp
index 7c77155b6c..ffdbbdab26 100644
--- a/src/gpu/gl/GrGLPathRendering.cpp
+++ b/src/gpu/gl/GrGLPathRendering.cpp
@@ -61,9 +61,6 @@ static GrGLenum gr_stencil_op_to_gl_path_rendering_fill_mode(GrStencilOp op) {
GrGLPathRendering::GrGLPathRendering(GrGLGpu* gpu)
: GrPathRendering(gpu) {
- const GrGLInterface* glInterface = gpu->glInterface();
- fCaps.bindFragmentInputSupport =
- NULL != glInterface->fFunctions.fBindFragmentInputLocation;
}
GrGLPathRendering::~GrGLPathRendering() {
diff --git a/src/gpu/gl/GrGLPathRendering.h b/src/gpu/gl/GrGLPathRendering.h
index 5996e906bd..86cf1b1698 100644
--- a/src/gpu/gl/GrGLPathRendering.h
+++ b/src/gpu/gl/GrGLPathRendering.h
@@ -46,10 +46,6 @@ public:
*/
void abandonGpuResources();
- bool shouldBindFragmentInputs() const {
- return fCaps.bindFragmentInputSupport;
- }
-
// Functions for "separable shader" texturing support.
void setProgramPathFragmentInputTransform(GrGLuint program, GrGLint location,
GrGLenum genMode, GrGLint components,
@@ -69,13 +65,6 @@ protected:
void onDrawPaths(const DrawPathArgs&, const GrPathRange*, const void* indices, PathIndexType,
const float transformValues[], PathTransformType, int count) override;
private:
- /**
- * Mark certain functionality as not supported.
- */
- struct Caps {
- bool bindFragmentInputSupport : 1;
- };
-
void flushPathStencilSettings(const GrStencilSettings&);
struct MatrixState {
@@ -114,7 +103,6 @@ private:
SkAutoTDelete<GrGLNameAllocator> fPathNameAllocator;
MatrixState fHWProjectionMatrixState;
GrStencilSettings fHWPathStencilSettings;
- Caps fCaps;
};
#endif
diff --git a/src/gpu/gl/builders/GrGLPathProgramBuilder.cpp b/src/gpu/gl/builders/GrGLPathProgramBuilder.cpp
index 9bebe0d89e..c9f88cd702 100644
--- a/src/gpu/gl/builders/GrGLPathProgramBuilder.cpp
+++ b/src/gpu/gl/builders/GrGLPathProgramBuilder.cpp
@@ -35,25 +35,9 @@ GrGLProgramBuilder::SeparableVaryingHandle GrGLPathProgramBuilder::addSeparableV
return SeparableVaryingHandle::CreateFromSeparableVaryingIndex(varyingInfo.fLocation);
}
-void GrGLPathProgramBuilder::bindProgramResourceLocations(GrGLuint programID) {
- this->INHERITED::bindProgramResourceLocations(programID);
- if (!fGpu->glPathRendering()->shouldBindFragmentInputs()) {
- return;
- }
- int count = fSeparableVaryingInfos.count();
- for (int i = 0; i < count; ++i) {
- GL_CALL(BindFragmentInputLocation(programID,
- i,
- fSeparableVaryingInfos[i].fVariable.c_str()));
- fSeparableVaryingInfos[i].fLocation = i;
- }
-}
-
void GrGLPathProgramBuilder::resolveProgramResourceLocations(GrGLuint programID) {
this->INHERITED::resolveProgramResourceLocations(programID);
- if (fGpu->glPathRendering()->shouldBindFragmentInputs()) {
- return;
- }
+
int count = fSeparableVaryingInfos.count();
for (int i = 0; i < count; ++i) {
GrGLint location;
diff --git a/src/gpu/gl/builders/GrGLPathProgramBuilder.h b/src/gpu/gl/builders/GrGLPathProgramBuilder.h
index d0c77fcdc7..28260cf760 100644
--- a/src/gpu/gl/builders/GrGLPathProgramBuilder.h
+++ b/src/gpu/gl/builders/GrGLPathProgramBuilder.h
@@ -17,7 +17,6 @@ public:
SeparableVaryingHandle addSeparableVarying(const char* name, GrGLVertToFrag* v,
GrSLPrecision fsPrecision) override;
- void bindProgramResourceLocations(GrGLuint programID) override;
void resolveProgramResourceLocations(GrGLuint programID) override;
private:
diff --git a/src/gpu/gl/builders/GrGLProgramBuilder.h b/src/gpu/gl/builders/GrGLProgramBuilder.h
index 22b67ae58d..4b784aceea 100644
--- a/src/gpu/gl/builders/GrGLProgramBuilder.h
+++ b/src/gpu/gl/builders/GrGLProgramBuilder.h
@@ -328,7 +328,7 @@ protected:
GrGLInstalledProc<Proc>*);
GrGLProgram* finalize();
- virtual void bindProgramResourceLocations(GrGLuint programID);
+ void bindProgramResourceLocations(GrGLuint programID);
bool checkLinkStatus(GrGLuint programID);
virtual void resolveProgramResourceLocations(GrGLuint programID);
void cleanupProgram(GrGLuint programID, const SkTDArray<GrGLuint>& shaderIDs);