DescriptionThis changes the signature of SkImageFilter::filterImageGPU() to use SkBitmaps for input and output, and removes the rect param. This allows us to return textures which are larger than the actual result, such as when GrAutoScratchTextures are used. The SkBitmap's size represents the active region, while the GrTexture's size is the full texture size.
This fixes the bicubic image filter GM on the GPU, which otherwise draws garbage outside the filtered region. It also moves us closer to unifying the signatures of SkImageFilter::onFilterImage() and SkImageFilter::filterImageGPU().
Committed: https://code.google.com/p/skia/source/detail?r=7467
Patch Set 1 #Patch Set 2 : Another approach, using SkBitmap #Patch Set 3 : Cleanup; fix unrefs; fix blur bug; new -> SkNEW_ARGS #Patch Set 4 : Refactor getInputResultAsTexture, texture wrapping to SkImageFilterUtils. #
Total comments: 1
Patch Set 5 : Fix comment in SkImageFilterh. #Patch Set 6 : Fix comment in SkImageFilter.h. #
Total comments: 1
Patch Set 7 : Fix refcounting issues in wrap_texture; add comments. #Patch Set 8 : Use auto-unreffing GrTextures instead of explicitly unref'ing in WrapTexture(). #Patch Set 9 : Fix comment #Patch Set 10 : Switch filterImageGPU() to use an SkBitmap pointer outparam, and return a bool. #Patch Set 11 : Update to ToT. #Patch Set 12 : Switch to kSkia8888_GrPixelConfig for filtered textures. #
Total comments: 1
MessagesTotal messages: 16
|