diff options
author | 2015-04-29 11:18:05 -0700 | |
---|---|---|
committer | 2015-04-29 11:18:05 -0700 | |
commit | e9c0fc616d2a1632c285885b9b656b68ca8d4f24 (patch) | |
tree | 70325926996eb9e0cd63db76ea5aaec288091a84 /src/gpu/gl/builders | |
parent | 23c5f5137106221f9a00ac1e12740ee33e09767f (diff) |
Pull out shader-specific caps into GrShaderCaps and GrGLSLCaps
BUG=skia:
Review URL: https://codereview.chromium.org/1116713002
Diffstat (limited to 'src/gpu/gl/builders')
-rw-r--r-- | src/gpu/gl/builders/GrGLFragmentShaderBuilder.cpp | 12 | ||||
-rw-r--r-- | src/gpu/gl/builders/GrGLProgramBuilder.cpp | 4 |
2 files changed, 8 insertions, 8 deletions
diff --git a/src/gpu/gl/builders/GrGLFragmentShaderBuilder.cpp b/src/gpu/gl/builders/GrGLFragmentShaderBuilder.cpp index c739f1162a..daea878b26 100644 --- a/src/gpu/gl/builders/GrGLFragmentShaderBuilder.cpp +++ b/src/gpu/gl/builders/GrGLFragmentShaderBuilder.cpp @@ -39,7 +39,7 @@ static void append_default_precision_qualifier(GrSLPrecision p, GrGLFragmentShaderBuilder::DstReadKey GrGLFragmentShaderBuilder::KeyForDstRead(const GrTexture* dstCopy, const GrGLCaps& caps) { uint32_t key = kYesDstRead_DstReadKeyBit; - if (caps.fbFetchSupport()) { + if (caps.glslCaps()->fbFetchSupport()) { return key; } SkASSERT(dstCopy); @@ -79,7 +79,7 @@ bool GrGLFragmentShaderBuilder::enableFeature(GLSLFeature feature) { switch (feature) { case kStandardDerivatives_GLSLFeature: { GrGLGpu* gpu = fProgramBuilder->gpu(); - if (!gpu->glCaps().shaderDerivativeSupport()) { + if (!gpu->glCaps().shaderCaps()->shaderDerivativeSupport()) { return false; } if (kGLES_GrGLStandard == gpu->glStandard() && @@ -166,13 +166,13 @@ const char* GrGLFragmentShaderBuilder::dstColor() { fHasReadDstColor = true; GrGLGpu* gpu = fProgramBuilder->gpu(); - if (gpu->glCaps().fbFetchSupport()) { + if (gpu->glCaps().glslCaps()->fbFetchSupport()) { this->addFeature(1 << (GrGLFragmentShaderBuilder::kLastGLSLPrivateFeature + 1), - gpu->glCaps().fbFetchExtensionString()); + gpu->glCaps().glslCaps()->fbFetchExtensionString()); // Some versions of this extension string require declaring custom color output on ES 3.0+ - const char* fbFetchColorName = gpu->glCaps().fbFetchColorName(); - if (gpu->glCaps().fbFetchNeedsCustomOutput()) { + const char* fbFetchColorName = gpu->glCaps().glslCaps()->fbFetchColorName(); + if (gpu->glCaps().glslCaps()->fbFetchNeedsCustomOutput()) { this->enableCustomOutput(); fOutputs[fCustomColorOutputIndex].setTypeModifier(GrShaderVar::kInOut_TypeModifier); fbFetchColorName = declared_color_output_name(); diff --git a/src/gpu/gl/builders/GrGLProgramBuilder.cpp b/src/gpu/gl/builders/GrGLProgramBuilder.cpp index e65ea880c3..37ba3dc942 100644 --- a/src/gpu/gl/builders/GrGLProgramBuilder.cpp +++ b/src/gpu/gl/builders/GrGLProgramBuilder.cpp @@ -75,7 +75,7 @@ GrGLProgram* GrGLProgramBuilder::CreateProgram(const DrawArgs& args, GrGLGpu* gp GrGLProgramBuilder* GrGLProgramBuilder::CreateProgramBuilder(const DrawArgs& args, GrGLGpu* gpu) { if (args.fPrimitiveProcessor->isPathRendering()) { - SkASSERT(gpu->glCaps().pathRenderingSupport() && + SkASSERT(gpu->glCaps().shaderCaps()->pathRenderingSupport() && !args.fPrimitiveProcessor->willUseGeoShader() && args.fPrimitiveProcessor->numAttribs() == 0); return SkNEW_ARGS(GrGLNvprProgramBuilder, (gpu, args)); @@ -302,7 +302,7 @@ void GrGLProgramBuilder::emitAndInstallProc(const GrPrimitiveProcessor& gp, fGeometryProcessor = SkNEW(GrGLInstalledGeoProc); const GrBatchTracker& bt = this->batchTracker(); - fGeometryProcessor->fGLProc.reset(gp.createGLInstance(bt, fGpu->glCaps())); + fGeometryProcessor->fGLProc.reset(gp.createGLInstance(bt, *fGpu->glCaps().glslCaps())); SkSTArray<4, GrGLProcessor::TextureSampler> samplers(gp.numTextures()); this->emitSamplers(gp, &samplers, fGeometryProcessor); |