aboutsummaryrefslogtreecommitdiffhomepage
path: root/gn/gpu.gni
Commit message (Collapse)AuthorAge
* Remove two more gpu headers from include/*Gravatar Robert Phillips2017-04-24
| | | | | | | | | | | This is probably it until GrTexture.h can be hidden. TBR=bsalomon@google.com Change-Id: Ie743c937f72aa0dc9f5e84def572f655f0abe041 Reviewed-on: https://skia-review.googlesource.com/14143 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Make InstancedRendering more opList-splitting friendlyGravatar Robert Phillips2017-04-24
| | | | | | | | | This CL splits the InstancedRendering class into an allocator and a per-opList op tracker. This was done because we need to allocate the InstancedRendering ops before we know the final destination opList. The InstancedRendering ops are now still all allocated from the same pool but the tracking and execution is done per opList. Change-Id: Ieddabb6f85f8f187c5e7373f7f6cb155d69a9685 Reviewed-on: https://skia-review.googlesource.com/13860 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Chris Dalton <csmartdalton@google.com>
* Remove more headers from include/gpuGravatar Robert Phillips2017-04-21
| | | | | | | | | TBR=bsalomon@google.com Change-Id: I93b28cfcb4d7b50c12e24ea81faab680bccce9ef Reviewed-on: https://skia-review.googlesource.com/14036 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Remove all headers from include/gpu/effectsGravatar Robert Phillips2017-04-21
| | | | | | | | | TBR=bsalomon@google.com Change-Id: I9ad2fa41262693b3a83bef625eac332eb1e71a3d Reviewed-on: https://skia-review.googlesource.com/13988 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Add backend safe classes for passing in external texture and render targets ↵Gravatar Greg Daniel2017-04-18
| | | | | | | | | | | | | | | | | into gpu This CL adds the GrBackend* classes as well as just updates the API for SkSurface and SkImage. The implementation on SkSurface/Image and the plumbing down into Ganesh will be in an additional CL. Besides the change to use the type safe classes, we also pull the SurfaceFlags, origin, samples, out of the descriptor and pass those in directly. Bug: skia: Change-Id: I9702981fe26c3d5d7d2cbcf6977ba569d356d854 Reviewed-on: https://skia-review.googlesource.com/13122 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Renames of processor analysis-related classes and method.Gravatar Brian Salomon2017-03-30
| | | | | | | | | | | | GrProcesserSet::FragmentProcessorAnalysis->GrProcessorSet::Analysis GrPipelineAnalysisColor->GrProcessorAnalysisColor GrPipelineAnalysisCoverage->GrProcessorAnalysisCoverage GrMeshDrawOp::getFragmentProcessorAnalysisInputs->GrMeshDrawOp::getProcessorAnalysisInputs Change-Id: I28ad19dfab5f4ac1788c4eacdec5e1af2a701dd0 Reviewed-on: https://skia-review.googlesource.com/10747 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Split GrPipelineInput into separate color and coverage types, the latter of ↵Gravatar Brian Salomon2017-03-27
| | | | | | | | | | | | | | | which is just an enum. Assign names that indicate that they aren't just for the input phase since I plan to use them at the boundary between FPs and XPs as well. Renamed GrProcOptInfo to GrColorFragmentProcessorAnalysis. This is now only used on the color side and the new name seems clearer to me. Change GrMeshDrawOp::getFragmentProcessorAnalysisInputs to use the new color/coverage types directly rather than a class that has been reduced to simply bundling them together. Change-Id: If93bae74c9d590486eecdf63f302418c96deab65 Reviewed-on: https://skia-review.googlesource.com/10161 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* check-headers-self-sufficient: updateGravatar Hal Canary2017-03-21
| | | | | | | | | | | | * Translate to python, use multiprocessing to make it wun in reasonanble time. * Fix three headers. * Move one header. Change-Id: I0b26f912bb8086ec158d1c0bae76b923ec6121a4 Reviewed-on: https://skia-review.googlesource.com/8490 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Hal Canary <halcanary@google.com>
* Add pre-Flush callback to GrDrawingManager (take 2)Gravatar Robert Phillips2017-03-21
| | | | | | | | | | | This will allow internal systems (e.g., fonts & path renderers) to create pre-flush atlases. Depends on: https://skia-review.googlesource.com/c/8988/ (Allow GrSurfaceProxy-derived classes to use flags when instantiating) Change-Id: I7ffc1b69defda625b6d4311e96776de4cf2abb87 Reviewed-on: https://skia-review.googlesource.com/9903 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Rename GrAADistanceFieldPathRenderer to GrSmallPathRendererGravatar Jim Van Verth2017-03-16
| | | | | | | | | Also disables use of small distance fields in Android framework. Change-Id: I1ba40ce85aa34d067608587e1fbe1d42e8a42868 Reviewed-on: https://skia-review.googlesource.com/9731 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Chris Dalton <csmartdalton@google.com>
* Revert "Add pre-Flush callback to GrDrawingManager"Gravatar Robert Phillips2017-03-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit d222ec492f5d0229986f529134d083e589bcc4a9. Reason for revert: TegraX1 Vulkan bot Original change's description: > Add pre-Flush callback to GrDrawingManager > > This will allow internal systems (e.g., fonts & path renderers) to create pre-flush atlases. > > Depends on: https://skia-review.googlesource.com/c/8988/ (Allow GrSurfaceProxy-derived classes to use flags when instantiating) > > Change-Id: I307796595d651cf376838bff1f9e4385c3753547 > Reviewed-on: https://skia-review.googlesource.com/8679 > Commit-Queue: Robert Phillips <robertphillips@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> > TBR=bsalomon@google.com,robertphillips@google.com,csmartdalton@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I852648adc12d2aa58cd09c57d961c340d657776c Reviewed-on: https://skia-review.googlesource.com/9735 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Add pre-Flush callback to GrDrawingManagerGravatar Robert Phillips2017-03-15
| | | | | | | | | | | This will allow internal systems (e.g., fonts & path renderers) to create pre-flush atlases. Depends on: https://skia-review.googlesource.com/c/8988/ (Allow GrSurfaceProxy-derived classes to use flags when instantiating) Change-Id: I307796595d651cf376838bff1f9e4385c3753547 Reviewed-on: https://skia-review.googlesource.com/8679 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* GPU version of onMakeColorSpaceGravatar Brian Osman2017-03-15
| | | | | | | | | | | | | | New fragment processor that implements end-to-end color space conversion, with nonlinear blending. BUG=skia:6242 Change-Id: Ied86170fc28537a2bc209d57530d3ded48b467a9 Reviewed-on: https://skia-review.googlesource.com/9543 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Matt Sarett <msarett@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Move GrSurfaceContext.h and GrTextureContext.h to src/gpu from include/gpuGravatar Brian Salomon2017-03-14
| | | | | | | Change-Id: I5b68650d2417018e217a2fef2f852316ebd9de6f Reviewed-on: https://skia-review.googlesource.com/9637 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Add GrSemaphoreOp to support deferred semaphore useGravatar Greg Daniel2017-03-09
| | | | | | | | | | | This is a precursor to adding support for external drawable ops. BUG=skia: Change-Id: I3e8b06b4cbe2b5728b7911c22ee74a93d0813f98 Reviewed-on: https://skia-review.googlesource.com/9452 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
* make GrPaint.h private -- IWYUGravatar Mike Reed2017-03-09
| | | | | | | | | | | prerequisit: https://codereview.chromium.org/2743533002/ BUG=skia: Change-Id: I8c2f34a6df165744ddeaeabb562cd6d6a9679b6a Reviewed-on: https://skia-review.googlesource.com/9461 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Make GrClip.h privateGravatar Brian Salomon2017-03-09
| | | | | | | | | BUG=skia: Change-Id: I4aa3c2707811ece3a63d161035e316c3bbc1cd15 Reviewed-on: https://skia-review.googlesource.com/9482 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Make SkGr.h private and remove unused functionsGravatar Brian Osman2017-03-08
| | | | | | | | | BUG=skia: Change-Id: I6699d00c5412ed9d9bf14b032a08b06b1c766bce Reviewed-on: https://skia-review.googlesource.com/9398 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Move GrDrawOp pipeline/clip processing to GrRenderTargetContextGravatar Brian Salomon2017-03-07
| | | | | | | | | This is currently done in GrOpList. However, it can trigger resource creation, which in turn can trigger a flush. In the future flushing may destroy the op list. Change-Id: I21cb1e10060bf31c95431c0511fcfff637cd6498 Reviewed-on: https://skia-review.googlesource.com/9304 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Remove PLS path rendererGravatar Brian Salomon2017-03-06
| | | | | | | Change-Id: Ib727b0749a5a7da95832970e79804417e8b6a247 Reviewed-on: https://skia-review.googlesource.com/9300 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Rebase and fix chromiumGravatar Brian Osman2017-03-04
| | | | | | | | | | | | | | Combine texture provider and resource provider Largely mechanical. Only three places that were calling createApprox via texture provider (ie without flags), so that was simple. BUG=skia: Change-Id: I876367bcdc6a8db736deedab1028de1972015509 Reviewed-on: https://skia-review.googlesource.com/9176 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Use GrSemaphore rather than GrFence for external texture dataGravatar Brian Osman2017-03-02
| | | | | | | | | | BUG=skia: Change-Id: I0d23eb9dcf5c01c71d3571ef97690af68b900807 Reviewed-on: https://skia-review.googlesource.com/9141 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Revert "Revert "Revert "Revert "Move GrTextureProvider to src""""Gravatar Brian Osman2017-03-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 580ffa0fb17bc4e924776eafd941bf1fab397cde. Reason for revert: Okay, it landed. Original change's description: > Revert "Revert "Revert "Move GrTextureProvider to src""" > > This reverts commit 2fe8373bb1d56f531f8a2e03a3087b0aa73e199c. > > Reason for revert: Google3 fix isn't landing. > > Original change's description: > > Revert "Revert "Move GrTextureProvider to src"" > > > > This reverts commit 13d7f5d7c2872ed4298330758e173ae605578cb2. > > > > Reason for revert: Fixed client code. Re-landing. > > > > Original change's description: > > > Revert "Move GrTextureProvider to src" > > > > > > This reverts commit 24429c68c56683252e3fc2a79d9b660eaf96ec0c. > > > > > > Reason for revert: Breaking a roll > > > > > > Original change's description: > > > > Move GrTextureProvider to src > > > > > > > > With this hidden, we can make further simplification. Just want to test > > > > this change against our external clients first, to make sure we're okay > > > > to proceed. > > > > > > > > BUG=skia: > > > > > > > > Change-Id: I47f8c8f2912201c2890bc2f9a9d68aa92649a2d4 > > > > Reviewed-on: https://skia-review.googlesource.com/9072 > > > > Commit-Queue: Brian Osman <brianosman@google.com> > > > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > > > > > > > > > TBR=bsalomon@google.com,brianosman@google.com,benjaminwagner@google.com,reviews@skia.org > > > NOPRESUBMIT=true > > > NOTREECHECKS=true > > > NOTRY=true > > > BUG=skia: > > > > > > Change-Id: I43cc135731245c29e24bbecf06ee46c562955c03 > > > Reviewed-on: https://skia-review.googlesource.com/9123 > > > Reviewed-by: Brian Osman <brianosman@google.com> > > > Commit-Queue: Brian Osman <brianosman@google.com> > > > > > > > TBR=bsalomon@google.com,benjaminwagner@google.com,reviews@skia.org,brianosman@google.com > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > BUG=skia: > > > > Change-Id: Ibcb2ea34654315327c46ea8e4de5bf14376d9bdf > > Reviewed-on: https://skia-review.googlesource.com/9127 > > Reviewed-by: Brian Osman <brianosman@google.com> > > Commit-Queue: Brian Osman <brianosman@google.com> > > > > TBR=bsalomon@google.com,benjaminwagner@google.com,reviews@skia.org,brianosman@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=skia: > > Change-Id: If5c06c7608d76c45438d03fefb21c4edd7da4f36 > Reviewed-on: https://skia-review.googlesource.com/9128 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Brian Osman <brianosman@google.com> > TBR=bsalomon@google.com,benjaminwagner@google.com,reviews@skia.org,brianosman@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Change-Id: I48da978fb73f914c09176e2fefa2882bc8a464a7 Reviewed-on: https://skia-review.googlesource.com/9150 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "Revert "Revert "Move GrTextureProvider to src"""Gravatar Brian Osman2017-03-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 2fe8373bb1d56f531f8a2e03a3087b0aa73e199c. Reason for revert: Google3 fix isn't landing. Original change's description: > Revert "Revert "Move GrTextureProvider to src"" > > This reverts commit 13d7f5d7c2872ed4298330758e173ae605578cb2. > > Reason for revert: Fixed client code. Re-landing. > > Original change's description: > > Revert "Move GrTextureProvider to src" > > > > This reverts commit 24429c68c56683252e3fc2a79d9b660eaf96ec0c. > > > > Reason for revert: Breaking a roll > > > > Original change's description: > > > Move GrTextureProvider to src > > > > > > With this hidden, we can make further simplification. Just want to test > > > this change against our external clients first, to make sure we're okay > > > to proceed. > > > > > > BUG=skia: > > > > > > Change-Id: I47f8c8f2912201c2890bc2f9a9d68aa92649a2d4 > > > Reviewed-on: https://skia-review.googlesource.com/9072 > > > Commit-Queue: Brian Osman <brianosman@google.com> > > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > > > > > > TBR=bsalomon@google.com,brianosman@google.com,benjaminwagner@google.com,reviews@skia.org > > NOPRESUBMIT=true > > NOTREECHECKS=true > > NOTRY=true > > BUG=skia: > > > > Change-Id: I43cc135731245c29e24bbecf06ee46c562955c03 > > Reviewed-on: https://skia-review.googlesource.com/9123 > > Reviewed-by: Brian Osman <brianosman@google.com> > > Commit-Queue: Brian Osman <brianosman@google.com> > > > > TBR=bsalomon@google.com,benjaminwagner@google.com,reviews@skia.org,brianosman@google.com > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=skia: > > Change-Id: Ibcb2ea34654315327c46ea8e4de5bf14376d9bdf > Reviewed-on: https://skia-review.googlesource.com/9127 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Brian Osman <brianosman@google.com> > TBR=bsalomon@google.com,benjaminwagner@google.com,reviews@skia.org,brianosman@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Change-Id: If5c06c7608d76c45438d03fefb21c4edd7da4f36 Reviewed-on: https://skia-review.googlesource.com/9128 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Add support for Semaphores (gpu waiting on gpu) in GaneshGravatar Greg Daniel2017-03-02
| | | | | | | | | | BUG=skia: Change-Id: I4324b65bc50a3dfd90372459899870d5f1952fdc Reviewed-on: https://skia-review.googlesource.com/9120 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Revert "Revert "Move GrTextureProvider to src""Gravatar Brian Osman2017-03-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 13d7f5d7c2872ed4298330758e173ae605578cb2. Reason for revert: Fixed client code. Re-landing. Original change's description: > Revert "Move GrTextureProvider to src" > > This reverts commit 24429c68c56683252e3fc2a79d9b660eaf96ec0c. > > Reason for revert: Breaking a roll > > Original change's description: > > Move GrTextureProvider to src > > > > With this hidden, we can make further simplification. Just want to test > > this change against our external clients first, to make sure we're okay > > to proceed. > > > > BUG=skia: > > > > Change-Id: I47f8c8f2912201c2890bc2f9a9d68aa92649a2d4 > > Reviewed-on: https://skia-review.googlesource.com/9072 > > Commit-Queue: Brian Osman <brianosman@google.com> > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > > > TBR=bsalomon@google.com,brianosman@google.com,benjaminwagner@google.com,reviews@skia.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=skia: > > Change-Id: I43cc135731245c29e24bbecf06ee46c562955c03 > Reviewed-on: https://skia-review.googlesource.com/9123 > Reviewed-by: Brian Osman <brianosman@google.com> > Commit-Queue: Brian Osman <brianosman@google.com> > TBR=bsalomon@google.com,benjaminwagner@google.com,reviews@skia.org,brianosman@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Change-Id: Ibcb2ea34654315327c46ea8e4de5bf14376d9bdf Reviewed-on: https://skia-review.googlesource.com/9127 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Revert "Move GrTextureProvider to src"Gravatar Brian Osman2017-03-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 24429c68c56683252e3fc2a79d9b660eaf96ec0c. Reason for revert: Breaking a roll Original change's description: > Move GrTextureProvider to src > > With this hidden, we can make further simplification. Just want to test > this change against our external clients first, to make sure we're okay > to proceed. > > BUG=skia: > > Change-Id: I47f8c8f2912201c2890bc2f9a9d68aa92649a2d4 > Reviewed-on: https://skia-review.googlesource.com/9072 > Commit-Queue: Brian Osman <brianosman@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> > TBR=bsalomon@google.com,brianosman@google.com,benjaminwagner@google.com,reviews@skia.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Change-Id: I43cc135731245c29e24bbecf06ee46c562955c03 Reviewed-on: https://skia-review.googlesource.com/9123 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Move GrTextureProvider to srcGravatar Brian Osman2017-03-01
| | | | | | | | | | | | | With this hidden, we can make further simplification. Just want to test this change against our external clients first, to make sure we're okay to proceed. BUG=skia: Change-Id: I47f8c8f2912201c2890bc2f9a9d68aa92649a2d4 Reviewed-on: https://skia-review.googlesource.com/9072 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Add GrExternalTextureData and SkCrossContextImageDataGravatar Brian Osman2017-02-28
| | | | | | | | | | | | | | | | | | | | | | | | GrExternalTextureData is an API for exporting the backend-specific information about a texture in a type-safe way, and without pointing into the GrTexture. The new detachBackendTexture API lets us release ownership of a texture to the client. SkCrossContextImageData is the public API that lets clients upload textures on one thread/GrContext, then safely transfer ownership to another thread and GrContext for rendering. Only GL is implemented/supported right now. Vulkan support requires that we add thread-safe memory pools, or otherwise transfer the actual memory block containing the texture to the new context. Re-land of https://skia-review.googlesource.com/c/8529/ BUG=skia: Change-Id: I48ebd57d1ea0cfd3a1db10c475f2903afb821966 Reviewed-on: https://skia-review.googlesource.com/8960 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Use construct/init pattern with GrPipeline to replace CreateAt.Gravatar Brian Salomon2017-02-24
| | | | | | | Change-Id: Ic6c7432a9a298a143ce4f2431e94c89a0ea79793 Reviewed-on: https://skia-review.googlesource.com/8938 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Revert "Add GrExternalTextureData and SkCrossContextImageData"Gravatar Brian Osman2017-02-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 9ad1f92e2fceea33215c0f13cee42a679fb88d44. Reason for revert: Breaking lots of bots Original change's description: > Add GrExternalTextureData and SkCrossContextImageData > > GrExternalTextureData is an API for exporting the backend-specific > information about a texture in a type-safe way, and without pointing > into the GrTexture. The new detachBackendTexture API lets us release > ownership of a texture to the client. > > SkCrossContextImageData is the public API that lets clients upload > textures on one thread/GrContext, then safely transfer ownership to > another thread and GrContext for rendering. > > Only GL is implemented/supported right now. Vulkan support requires > that we add thread-safe memory pools, or otherwise transfer the > actual memory block containing the texture to the new context. > > BUG=skia: > > Change-Id: I784a3a74be69807df038c7d192eaed002c7e45ca > Reviewed-on: https://skia-review.googlesource.com/8529 > Commit-Queue: Brian Osman <brianosman@google.com> > Reviewed-by: Brian Salomon <bsalomon@google.com> > TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com,brianosman@google.com,reviews@skia.org,chinmaygarde@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Change-Id: If27d1f4c3a169efb6533170f67a172664c0fe8ce Reviewed-on: https://skia-review.googlesource.com/8955 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
* Add GrExternalTextureData and SkCrossContextImageDataGravatar Brian Osman2017-02-24
| | | | | | | | | | | | | | | | | | | | | | GrExternalTextureData is an API for exporting the backend-specific information about a texture in a type-safe way, and without pointing into the GrTexture. The new detachBackendTexture API lets us release ownership of a texture to the client. SkCrossContextImageData is the public API that lets clients upload textures on one thread/GrContext, then safely transfer ownership to another thread and GrContext for rendering. Only GL is implemented/supported right now. Vulkan support requires that we add thread-safe memory pools, or otherwise transfer the actual memory block containing the texture to the new context. BUG=skia: Change-Id: I784a3a74be69807df038c7d192eaed002c7e45ca Reviewed-on: https://skia-review.googlesource.com/8529 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Remove GrPipelineBuilder.cppGravatar Brian Salomon2017-02-22
| | | | | | | Change-Id: I14c26f2967e4722fa4d6ce4664a5857add0cf854 Reviewed-on: https://skia-review.googlesource.com/8822 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* Make GrXferProcessor and related classes private.Gravatar Brian Salomon2017-02-21
| | | | | | | Change-Id: I81ea6f5ea5c8b7b23848ef24524a7e48e531efe8 Reviewed-on: https://skia-review.googlesource.com/8819 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Remove GrFragmentProcessor::computeInvariantOutputGravatar Brian Salomon2017-02-13
| | | | | | | Change-Id: If475730103052c6097eb91be06808fb723b70bf8 Reviewed-on: https://skia-review.googlesource.com/8330 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Change shadow tessellators to use SkColor and move to util.Gravatar Jim Van Verth2017-01-30
| | | | | | | | | BUG=skia:6119 Change-Id: I4c4a8933c663ccc057596318a06c538175b9f16b Reviewed-on: https://skia-review.googlesource.com/7726 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* Push GrTextureProxy down to more effectsGravatar Robert Phillips2017-01-30
| | | | | | | Change-Id: Ie3f32a88f25af082c25bc6daf3fe24e303e80f9e Reviewed-on: https://skia-review.googlesource.com/7616 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Add geometric version of spot shadowGravatar Jim Van Verth2017-01-27
| | | | | | | | | BUG=skia:6119 Change-Id: Ib9770bd88f4eebd68f2d893c5788f966d89f193c Reviewed-on: https://skia-review.googlesource.com/7585 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* Move SkGammaColorFilter to tools, limit to sRGBGravatar Brian Osman2017-01-26
| | | | | | | | | | | Similarly, limit GrGammaEffect to sRGB (and rename it). BUG=skia: Change-Id: I88feef11ab7040bca2fa4c2eed71923ded87a0d0 Reviewed-on: https://skia-review.googlesource.com/7375 Commit-Queue: Brian Osman <brianosman@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Switch GrConfigConversionEffect over to taking GrTextureProxiesGravatar Robert Phillips2017-01-25
| | | | | | | Change-Id: Ic8be773e210e1ac05dcb9aad6c89dcd63e9e4ba2 Reviewed-on: https://skia-review.googlesource.com/7521 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
* Move SkShadowTessellator to GrShadowTessellatorGravatar Jim Van Verth2017-01-25
| | | | | | | | | BUG=skia:6119 Change-Id: I9756b5aeaced1f21a65063470ccb013c7b856f28 Reviewed-on: https://skia-review.googlesource.com/7505 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* Make GrConvolutionEffect only support Gaussian kernels and rename.Gravatar Brian Salomon2017-01-24
| | | | | | | Change-Id: Ia874ad5bacc550b7ecec579719242e3354dca34b Reviewed-on: https://skia-review.googlesource.com/7432 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Add class GrProcessorSet which represents color and coverage FPs and a ↵Gravatar Brian Salomon2017-01-18
| | | | | | | | | | | | | XPFactory. Eventually ops can use this to hold their ops and create GrPipelines at flush time. For now it is used by GrPipelineBuilder. Change-Id: I0db3892032f2d07238e4c847a790678b3aab456f Reviewed-on: https://skia-review.googlesource.com/7132 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Simplify GrProcOptInfo initialization.Gravatar Brian Salomon2017-01-17
| | | | | | | | | | | | | Removes unused single channel tracking. Makes it so that only the op/gp can initiate lcd coverage. Makes GrProcOptInfo fragment processor analysis continuable. Change-Id: I003a8aa3836bb64d04b230ddee581dc500e613a9 Reviewed-on: https://skia-review.googlesource.com/7039 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Generate Signed Distance Field directly from vector pathGravatar joel.liang2017-01-09
| | | | | | | | | | | | | | | | Add SkGenerateDistanceFieldFromPath API to generate signed distance field directly from SkPath. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1643143002 Committed: https://skia.googlesource.com/skia/+/4de97a64e8829323a7070b623411d9f9ddb0cd0f Committed: https://skia.googlesource.com/skia/+/e8f0a7b986f1e5583c9bc162efcdd92fd6430549 Committed: https://skia.googlesource.com/skia/+/67c7c81a82b6351e9fbbf235084d7120162d9268 Review-Url: https://codereview.chromium.org/1643143002 Committed: https://skia.googlesource.com/skia/+/64b70b096ac20833d9737758a4bd5f2a51078bc4 Review-Url: https://codereview.chromium.org/1643143002 Committed: https://skia.googlesource.com/skia/+/6d2f73c364d0d823f14d1ddebc88e0bcbc8f0634 Review-Url: https://codereview.chromium.org/1643143002
* Move resource ref/io manipulation from GrProgramElement to GrProcessorGravatar Brian Salomon2017-01-09
| | | | | | | Change-Id: I783e74107f7d34b57d80b843fe23ce7126b77424 Reviewed-on: https://skia-review.googlesource.com/6816 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Misc batch->op cleanup Part 1 of 2Gravatar Brian Salomon2016-12-21
| | | | | | | Change-Id: I80f951976558a284e55386e0a368f08bd835d8ca Reviewed-on: https://skia-review.googlesource.com/6359 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
* Revert of Generate Signed Distance Field directly from vector path (patchset ↵Gravatar rmistry2016-12-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | #23 id:440001 of https://codereview.chromium.org/1643143002/ ) Reason for revert: Caused test failures again but this time in Win8 and Win10 bots: * https://chromium-swarm.appspot.com/task?id=33384540bf6f3710&refresh=10 * https://chromium-swarm.appspot.com/task?id=3338a3ea9f6fe510&refresh=10 Original issue's description: > Generate Signed Distance Field directly from vector path > > Add SkGenerateDistanceFieldFromPath API to generate signed distance field directly from SkPath. > > BUG=skia: > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1643143002 > > Committed: https://skia.googlesource.com/skia/+/4de97a64e8829323a7070b623411d9f9ddb0cd0f > Committed: https://skia.googlesource.com/skia/+/e8f0a7b986f1e5583c9bc162efcdd92fd6430549 > Committed: https://skia.googlesource.com/skia/+/67c7c81a82b6351e9fbbf235084d7120162d9268 > Review-Url: https://codereview.chromium.org/1643143002 > Committed: https://skia.googlesource.com/skia/+/64b70b096ac20833d9737758a4bd5f2a51078bc4 > Review-Url: https://codereview.chromium.org/1643143002 > Committed: https://skia.googlesource.com/skia/+/6d2f73c364d0d823f14d1ddebc88e0bcbc8f0634 TBR=bsalomon@google.com,jvanverth@google.com,mtklein@google.com,wasim.abbas@arm.com,caryclark@google.com,reed@google.com,egdaniel@google.com,joel.liang@arm.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review-Url: https://codereview.chromium.org/2597473003
* Generate Signed Distance Field directly from vector pathGravatar joel.liang2016-12-20
| | | | | | | | | | | | | | Add SkGenerateDistanceFieldFromPath API to generate signed distance field directly from SkPath. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1643143002 Committed: https://skia.googlesource.com/skia/+/4de97a64e8829323a7070b623411d9f9ddb0cd0f Committed: https://skia.googlesource.com/skia/+/e8f0a7b986f1e5583c9bc162efcdd92fd6430549 Committed: https://skia.googlesource.com/skia/+/67c7c81a82b6351e9fbbf235084d7120162d9268 Review-Url: https://codereview.chromium.org/1643143002 Committed: https://skia.googlesource.com/skia/+/64b70b096ac20833d9737758a4bd5f2a51078bc4 Review-Url: https://codereview.chromium.org/1643143002
* Rename files, macros, types, and functions related to GrDrawOp testing.Gravatar Brian Salomon2016-12-20
| | | | | | | | | Make the test factories use sk_sp. Change-Id: Idba630b84deb2848f2203a80fd72e1efa5fc6acf Reviewed-on: https://skia-review.googlesource.com/6342 Reviewed-by: Brian Osman <brianosman@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>