aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/gl/GrGLGpu.h
Commit message (Collapse)AuthorAge
* Use a struct for client GL texture handlesGravatar bsalomon2015-11-10
| | | | Review URL: https://codereview.chromium.org/1429863009
* Fix mixed samples stencil clipGravatar cdalton2015-11-09
| | | | | | | | | | | | | | Fixes rendering bugs and nondeterminism in gm. Before, mixed samples stencil clip would try to infer whether the draw wanted co-centered sample locations from within GrGLGpu, which caused various errors. This change reworks it so the draw itself can request the co-centered sample locations when it knows it will need them. Also reduces framebuffer binds by moving the code that enables GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS into flushRenderTarget. Review URL: https://codereview.chromium.org/1431593006
* Create swizzle table inside of glsl capsGravatar egdaniel2015-11-04
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/4036674952f341dab0695c3b054fefa5bb8cdec1 Review URL: https://codereview.chromium.org/1420033005
* Revert of Create swizzle table inside of glsl caps (patchset #12 id:210001 ↵Gravatar egdaniel2015-11-03
| | | | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/1420033005/ ) Reason for revert: Breaking gm's on nexus7 and s3 Original issue's description: > Create swizzle table inside of glsl caps > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/4036674952f341dab0695c3b054fefa5bb8cdec1 TBR=bsalomon@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1426653008
* Create swizzle table inside of glsl capsGravatar egdaniel2015-11-03
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1420033005
* Move shader compiling to ProgramBuilder and various ShaderBuilder cleanups.Gravatar egdaniel2015-11-02
| | | | | | | | An additional positive of this CL is that GrGLShaderBuilder is now GL independent besides GrGLProgramBuilder BUG=skia: Review URL: https://codereview.chromium.org/1431433003
* Move GrGLBufferImpl's GL calls to behind GrGLGpuGravatar joshualitt2015-10-23
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1417313003
* Store texture target on GrGLTexture. This is in preparation for using ↵Gravatar bsalomon2015-10-14
| | | | | | texture targets other than 2D. Review URL: https://codereview.chromium.org/1403123002
* Implement stencil clipping in mixed sampled render targetsGravatar vbuzinov2015-09-30
| | | | | | | | | | | | | | This change enables multisampled clipping for mixed sampled render targets. Previously clipping in mixed samples config behaved the same as in the gpu config. In order to retrofit non-MSAA draw methods, programmable sample locations are used in order to colocate all samples at (0.5, 0.5). Requires support for NV_sample_locations. BUG=skia:4399 Review URL: https://codereview.chromium.org/1232103002
* Stop supporting HW ditherGravatar bsalomon2015-09-22
| | | | Review URL: https://codereview.chromium.org/1359833004
* Move some of the adding stencil attachment logic of Gpu and into Render Target.Gravatar egdaniel2015-09-14
| | | | | | | | | | | | | | The new flow of calls for attaching a Stencil looks like: Client rt->attachStencilAttachment() gpu->getStencilAttachment() glgpu->createStencilAttachment() glrt->completeStencilAttachment() //actually attaches BUG=skia: Review URL: https://codereview.chromium.org/1333383002
* Remove batchtrackerGravatar joshualitt2015-09-11
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1332923003
* Calculate pixel config and stencil fmt pairs once per pixel config.Gravatar egdaniel2015-09-10
| | | | | | | | | | We use a temp FB and stencil buffer to test different stencil formats with a given pixel config. We then keep a map from pixel config to desired stencil format. BUG=skia: Review URL: https://codereview.chromium.org/1317443004
* Remove GrGpuTraceMarker hooks until we rethink the designGravatar joshualitt2015-09-01
| | | | | | | TBR=bsalomon@google.com BUG=526308 Review URL: https://codereview.chromium.org/1323823003
* Style Change: NULL->nullptrGravatar halcanary2015-08-27
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316233002 Review URL: https://codereview.chromium.org/1316233002
* Style Change: SkNEW->new; SkDELETE->deleteGravatar halcanary2015-08-26
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316123003 Review URL: https://codereview.chromium.org/1316123003
* Fix for copy surface not handling dirty contextGravatar joshualitt2015-08-21
| | | | | | BUG=521943 Review URL: https://codereview.chromium.org/1304263003
* Check for xfer barriers in GrBatch, auto-issue barriers in GrGpuGravatar bsalomon2015-08-12
| | | | Review URL: https://codereview.chromium.org/1287973003
* Move some work from backend onClear to base class clearGravatar egdaniel2015-08-06
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1275543005
* SRGB read and write pixels working and unit testGravatar bsalomon2015-07-30
| | | | Review URL: https://codereview.chromium.org/1264003002
* Make GrGpu read/write pixels take GrSurfaceGravatar bsalomon2015-07-30
| | | | Review URL: https://codereview.chromium.org/1262473004
* Move draw on upload decision in GrGpuGravatar bsalomon2015-07-28
| | | | | | | | BUG=skia: Committed: https://skia.googlesource.com/skia/+/0341b4427e5f037e3b501ed6e57dfdb7b40f150e Review URL: https://codereview.chromium.org/1257073003
* Revert of Move draw on upload decision in GrGpu (patchset #4 id:50001 of ↵Gravatar bsalomon2015-07-28
| | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1257073003/) Reason for revert: breaking write pixels test on bots Original issue's description: > Move draw on upload decision in GrGpu > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/0341b4427e5f037e3b501ed6e57dfdb7b40f150e TBR=robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1260293004
* Move draw on upload decision in GrGpuGravatar bsalomon2015-07-28
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1257073003
* Attempt to somewhat simplify GrContext::readSurfacePixels interaction with ↵Gravatar bsalomon2015-07-23
| | | | | | GrGpu. Review URL: https://codereview.chromium.org/1255483005
* Rename backing texture testing routinesGravatar jvanverth2015-07-14
| | | | Review URL: https://codereview.chromium.org/1230193006
* Start to propagate constness of GrPipelineBuilder up the stackGravatar joshualitt2015-07-13
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1229143007
* Remove GL-specific code from GMs and testsGravatar jvanverth2015-07-13
| | | | | | TBR=bsalomon@google.com Review URL: https://codereview.chromium.org/1232173002
* Cleanup legacy NVPR-related definitionsGravatar kkinnunen2015-07-01
| | | | | | | | | | | | | | | | | | | | | | | | Fixed-function NVPR codepaths were removed a while ago. Only NVPR API version 1.3 (PathFragmentInputGen) was left working. Remove backwards-compatibility code that was left behind. Remove some NVPR API function typedefs that were left from initial commits. Remove PathCoords function pointer from GrGLInterface, it has never been called and causes problems in the future, since it will not be implemented in the Chromium pseudo extension. Avoid failing interface creation even if nvprmsaaXX config is requested but the driver is not recent enough. The SAN bots have old driver, but try to run nvprmsaa16 configs. Instead, print out a warning. Committed: https://skia.googlesource.com/skia/+/fb8d6884e0e01d0c2f8596adf5af1efb0d08de7e Committed: https://skia.googlesource.com/skia/+/e35b5d99d8dfcc6b2be844df28cba47436380809 Review URL: https://codereview.chromium.org/1177243004
* Revert of Cleanup legacy NVPR-related definitions (patchset #4 id:60001 of ↵Gravatar jvanverth2015-06-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1177243004/) Reason for revert: Breaks the Ubuntu *SAN bots. Original issue's description: > Cleanup legacy NVPR-related definitions > > Fixed-function NVPR codepaths were removed a while ago. Only NVPR API > version 1.3 (PathFragmentInputGen) was left working. Remove > backwards-compatibility code that was left behind. > > Remove some NVPR API function typedefs that were left from initial > commits. > > Remove PathCoords function pointer from GrGLInterface, it has > never been called and causes problems in the future, since it will > not be implemented in the Chromium pseudo extension. > > Committed: https://skia.googlesource.com/skia/+/fb8d6884e0e01d0c2f8596adf5af1efb0d08de7e > > Committed: https://skia.googlesource.com/skia/+/e35b5d99d8dfcc6b2be844df28cba47436380809 TBR=joshualitt@google.com,cdalton@nvidia.com,bsalomon@google.com,kkinnunen@nvidia.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1219663005
* Cleanup legacy NVPR-related definitionsGravatar kkinnunen2015-06-30
| | | | | | | | | | | | | | | | | Fixed-function NVPR codepaths were removed a while ago. Only NVPR API version 1.3 (PathFragmentInputGen) was left working. Remove backwards-compatibility code that was left behind. Remove some NVPR API function typedefs that were left from initial commits. Remove PathCoords function pointer from GrGLInterface, it has never been called and causes problems in the future, since it will not be implemented in the Chromium pseudo extension. Committed: https://skia.googlesource.com/skia/+/fb8d6884e0e01d0c2f8596adf5af1efb0d08de7e Review URL: https://codereview.chromium.org/1177243004
* Revert of Revert of Return GrGLContext from GrTestTarget (patchset #1 id:1 ↵Gravatar reed2015-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/1211123004/) Reason for revert: un-referting, did not help DEPS roll Original issue's description: > Revert of Return GrGLContext from GrTestTarget (patchset #3 id:40001 of https://codereview.chromium.org/1207393002/) > > Reason for revert: > speculative revert to unblock DEPS roll (layout-tests) > > Original issue's description: > > Return GrGLContext from GrTestTarget > > > > BUG=skia: > > > > Committed: https://skia.googlesource.com/skia/+/b6d93ea428ca5d13641c35faca7d0380980a3a17 > > TBR=bsalomon@google.com,joshualitt@google.com,joshualitt@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/1852ec2b46a2a0efbb3550ff4d8b640f56a810e9 TBR=bsalomon@google.com,joshualitt@google.com,joshualitt@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1215593002
* Revert of Return GrGLContext from GrTestTarget (patchset #3 id:40001 of ↵Gravatar reed2015-06-25
| | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1207393002/) Reason for revert: speculative revert to unblock DEPS roll (layout-tests) Original issue's description: > Return GrGLContext from GrTestTarget > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/b6d93ea428ca5d13641c35faca7d0380980a3a17 TBR=bsalomon@google.com,joshualitt@google.com,joshualitt@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1211123004
* Return GrGLContext from GrTestTargetGravatar joshualitt2015-06-25
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1207393002
* Revert of Cleanup legacy NVPR-related definitions (patchset #3 id:40001 of ↵Gravatar fmalita2015-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1177243004/) Reason for revert: Broke the GPU SAN bots: https://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-Golo-GPU-GT610-x86_64-Debug-ASAN/builds/779/steps/dm/logs/stdio Original issue's description: > Cleanup legacy NVPR-related definitions > > Fixed-function NVPR codepaths were removed a while ago. Only NVPR API > version 1.3 (PathFragmentInputGen) was left working. Remove > backwards-compatibility code that was left behind. > > Remove some NVPR API function typedefs that were left from initial > commits. > > Remove PathCoords function pointer from GrGLInterface, it has > never been called and causes problems in the future, since it will > not be implemented in the Chromium pseudo extension. > > Committed: https://skia.googlesource.com/skia/+/fb8d6884e0e01d0c2f8596adf5af1efb0d08de7e TBR=joshualitt@google.com,cdalton@nvidia.com,bsalomon@google.com,kkinnunen@nvidia.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1206333003
* Cleanup legacy NVPR-related definitionsGravatar kkinnunen2015-06-25
| | | | | | | | | | | | | | | Fixed-function NVPR codepaths were removed a while ago. Only NVPR API version 1.3 (PathFragmentInputGen) was left working. Remove backwards-compatibility code that was left behind. Remove some NVPR API function typedefs that were left from initial commits. Remove PathCoords function pointer from GrGLInterface, it has never been called and causes problems in the future, since it will not be implemented in the Chromium pseudo extension. Review URL: https://codereview.chromium.org/1177243004
* Add support for creating texture backed images where Skia will delete the ↵Gravatar bsalomon2015-06-18
| | | | | | texture. Review URL: https://codereview.chromium.org/1187523005
* Revert "Revert of Move copy-surface-as-draw fallback to GrGLGpu. (patchset ↵Gravatar bsalomon2015-06-01
| | | | | | | | #12 id:220001 of https://codereview.chromium.org/1144433002/)" This reverts commit 404b3b264b833eb7cffdc833c7e2ebbd708e123a. Review URL: https://codereview.chromium.org/1161063003
* Refactor GrGpu path rendering functions to GrPathRenderingGravatar kkinnunen2015-06-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GrGpu, GrGLGpu, GrPathRendering, GrGLPathRendering all duplicated each others' path rendering related member functions. Make GrPathRending the logical extension of GrGpu by removing the methods from GrGpu. Similarly to the GL variants. Changes includes and forward declarations due to removing GrDrawTarget.h include from GrGpu.h. This was necessary due to GrDrawTarget.h including GrPathRendering.h, and now GrPathRendering.h includes GrGpu.h. (Also GrGpu.h does not need GrDrawTarget.h anymore). Very slight runtime improvement on x86_64: desk_fontwipe.skp_1 836us -> 841us 1.01x desk_silkfinance.skp_1 2.01ms -> 2.01ms 1x desk_forecastio.skp_1 7.03ms -> 7.05ms 1x desk_weather.skp_1 3.74ms -> 3.74ms 1x desk_twitter.skp_1 8.02ms -> 8.01ms 1x desk_mapsvg.skp_1 5.24ms -> 5.23ms 1x desk_pokemonwiki.skp_1 7.06ms -> 7.03ms 1x desk_sfgate.skp_1 3.19ms -> 3.17ms 1x tabl_cuteoverload.skp_1 2.66ms -> 2.64ms 0.99x ... tabl_transformice.skp_1 3.06ms -> 2.98ms 0.98x tabl_googlecalendar.skp_1 11.3ms -> 11ms 0.97x tabl_gamedeksiam.skp_1 12.8ms -> 12.4ms 0.97x desk_samoasvg.skp_1 10.6ms -> 10.3ms 0.97x tabl_worldjournal.skp_1 4.44ms -> 4.3ms 0.97x Review URL: https://codereview.chromium.org/1157683006
* SkImage::NewFromYUVTexturesCopyGravatar bsalomon2015-05-29
| | | | Review URL: https://codereview.chromium.org/1149553002
* Store context options on caps.Gravatar bsalomon2015-05-22
| | | | | | Committed: https://skia.googlesource.com/skia/+/f28cff71db2cbb1ff18a8fbf1e80ca761d1f69bc Review URL: https://codereview.chromium.org/1158433006
* Revert of Store context options on caps. (patchset #3 id:40001 of ↵Gravatar bsalomon2015-05-22
| | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1158433006/) Reason for revert: breaking chromeos build (???) Original issue's description: > Store context options on caps. > > Committed: https://skia.googlesource.com/skia/+/f28cff71db2cbb1ff18a8fbf1e80ca761d1f69bc TBR=joshualitt@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1151603005
* Store context options on caps.Gravatar bsalomon2015-05-22
| | | | Review URL: https://codereview.chromium.org/1158433006
* Remove init from GrGLContextInfo and caps classesGravatar bsalomon2015-05-22
| | | | | | Make Gr*Caps, GrGLContext* noncopyable Review URL: https://codereview.chromium.org/1153813002
* Revert of Move copy-surface-as-draw fallback to GrGLGpu. (patchset #12 ↵Gravatar mtklein2015-05-18
| | | | | | | | | | | | | | | | | | | id:220001 of https://codereview.chromium.org/1144433002/) Reason for revert: Many GMs changed, some totally busted. Original issue's description: > Move copy-surface-as-draw fallback to GrGLGpu. > > Committed: https://skia.googlesource.com/skia/+/5df6fee929823f50c55cc50f7c882a309c1b1de9 TBR=joshualitt@google.com,egdaniel@google.com,bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1142003003
* Move copy-surface-as-draw fallback to GrGLGpu.Gravatar bsalomon2015-05-18
| | | | Review URL: https://codereview.chromium.org/1144433002
* Don't issue texture barriers for RT's with separate storageGravatar cdalton2015-05-13
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1137663004
* Remove GrGLVertexArray from GrGpuResource hierarchy.Gravatar bsalomon2015-05-13
| | | | Review URL: https://codereview.chromium.org/1137093002
* Add function for logging blend info on XP.Gravatar bsalomon2015-05-11
| | | | Review URL: https://codereview.chromium.org/1132373003
* Iterate over instanced draws in GrGpu rather than above GrBatchTargetGravatar bsalomon2015-05-07
| | | | Review URL: https://codereview.chromium.org/1127273007