Revert r1937 while I try to figure out the GM failures.
(Unreviewed; build fix). git-svn-id: http://skia.googlecode.com/svn/trunk@1938 2bbb7eff-a529-9590-31e7-b0007b416f81
This commit is contained in:
parent
b7f28d6ecd
commit
fdaf2b9f8b
@ -1736,6 +1736,5 @@ void GrContext::convolve(GrTexture* texture,
|
||||
fGpu->setSamplerState(0, sampler);
|
||||
fGpu->setViewMatrix(GrMatrix::I());
|
||||
fGpu->setTexture(0, texture);
|
||||
fGpu->setBlendFunc(kOne_BlendCoeff, kZero_BlendCoeff);
|
||||
fGpu->drawSimpleRect(rect, NULL, 1 << 0);
|
||||
}
|
||||
|
@ -913,7 +913,9 @@ static bool drawWithGPUMaskFilter(GrContext* context, const SkPath& path,
|
||||
GrClip oldClip = context->getClip();
|
||||
context->setRenderTarget(dstTexture->asRenderTarget());
|
||||
context->setClip(srcRect);
|
||||
// FIXME: could just clear bounds
|
||||
context->clear(NULL, 0);
|
||||
GrMatrix transM;
|
||||
GrPaint tempPaint;
|
||||
tempPaint.reset();
|
||||
|
||||
@ -957,6 +959,9 @@ static bool drawWithGPUMaskFilter(GrContext* context, const SkPath& path,
|
||||
context->setRenderTarget(dstTexture->asRenderTarget());
|
||||
SkRect dstRect(srcRect);
|
||||
scaleRect(&dstRect, 0.5f);
|
||||
// Clear out 1 pixel border for linear filtering.
|
||||
// FIXME: for now, clear everything
|
||||
context->clear(NULL, 0);
|
||||
paint.setTexture(0, srcTexture);
|
||||
context->drawRectToRect(paint, dstRect, srcRect);
|
||||
srcRect = dstRect;
|
||||
@ -967,23 +972,13 @@ static bool drawWithGPUMaskFilter(GrContext* context, const SkPath& path,
|
||||
float* kernel = kernelStorage.get();
|
||||
buildKernel(sigma, kernel, kernelWidth);
|
||||
|
||||
// Clear out a halfWidth to the right of the srcRect to prevent the
|
||||
// X convolution from reading garbage.
|
||||
SkIRect clearRect = SkIRect::MakeXYWH(
|
||||
srcRect.fRight, srcRect.fTop, halfWidth, srcRect.height());
|
||||
context->clear(&clearRect, 0x0);
|
||||
|
||||
context->setRenderTarget(dstTexture->asRenderTarget());
|
||||
context->clear(NULL, 0);
|
||||
context->convolveInX(srcTexture, srcRect, kernel, kernelWidth);
|
||||
SkTSwap(srcTexture, dstTexture);
|
||||
|
||||
// Clear out a halfWidth below the srcRect to prevent the Y
|
||||
// convolution from reading garbage.
|
||||
clearRect = SkIRect::MakeXYWH(
|
||||
srcRect.fLeft, srcRect.fBottom, srcRect.width(), halfWidth);
|
||||
context->clear(&clearRect, 0x0);
|
||||
|
||||
context->setRenderTarget(dstTexture->asRenderTarget());
|
||||
context->clear(NULL, 0);
|
||||
context->convolveInY(srcTexture, srcRect, kernel, kernelWidth);
|
||||
SkTSwap(srcTexture, dstTexture);
|
||||
|
||||
@ -993,6 +988,9 @@ static bool drawWithGPUMaskFilter(GrContext* context, const SkPath& path,
|
||||
sampleM.setIDiv(srcTexture->width(), srcTexture->height());
|
||||
paint.getTextureSampler(0)->setMatrix(sampleM);
|
||||
context->setRenderTarget(dstTexture->asRenderTarget());
|
||||
// Clear out 2 pixel border for bicubic filtering.
|
||||
// FIXME: for now, clear everything
|
||||
context->clear(NULL, 0);
|
||||
paint.setTexture(0, srcTexture);
|
||||
SkRect dstRect(srcRect);
|
||||
scaleRect(&dstRect, scaleFactor);
|
||||
|
Loading…
Reference in New Issue
Block a user