aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/gl/GrGLCaps.h
Commit message (Collapse)AuthorAge
* Fix gl caps for mixed sample supportGravatar egdaniel2015-10-26
| | | | | | | | | | The dependencies between glsl caps and some gl ones were more complex than I had thought with original change especially in regards to mix samples, advanced blends, and similar features. This changes simply reverts back to the original order of setting the caps so it should fix all perf issues that were seen in the X1 BUG=skia:4505 Review URL: https://codereview.chromium.org/1420423002
* Add version string and force highp NDS transfrom to GLSLCapsGravatar egdaniel2015-10-22
| | | | | | | | | | This also include the use of any() in the shaders. BUG=skia: Committed: https://skia.googlesource.com/skia/+/cef4bce8e260b49bf3417eadbac806cf7d39cdc8 Review URL: https://codereview.chromium.org/1417993004
* Revert of Add version string and force highp NDS transfrom to GLSLCaps ↵Gravatar egdaniel2015-10-22
| | | | | | | | | | | | | | | | | | | | | | | | (patchset #3 id:40001 of https://codereview.chromium.org/1417993004/ ) Reason for revert: breaking bots Original issue's description: > Add version string and force highp NDS transfrom to GLSLCaps > > This also include the use of any() in the shaders. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/cef4bce8e260b49bf3417eadbac806cf7d39cdc8 TBR=bsalomon@google.com,jvanverth@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1420033002
* Add version string and force highp NDS transfrom to GLSLCapsGravatar egdaniel2015-10-22
| | | | | | | | This also include the use of any() in the shaders. BUG=skia: Review URL: https://codereview.chromium.org/1417993004
* Move shader precision modifier check onto GLSLCapsGravatar egdaniel2015-10-21
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1414373002
* Fix for 2056Gravatar joshualitt2015-10-01
| | | | | | BUG=skia:2056 Review URL: https://codereview.chromium.org/1376293003
* 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
* Move some work from backend onClear to base class clearGravatar egdaniel2015-08-06
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1275543005
* Make ANGLE perf decisions be runtime rather than compile timeGravatar bsalomon2015-07-31
| | | | | | R=robertphillips@google.com Review URL: https://codereview.chromium.org/1268953002
* SRGB read and write pixels working and unit testGravatar bsalomon2015-07-30
| | | | Review URL: https://codereview.chromium.org/1264003002
* 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
* remove SkInstCntGravatar mtklein2015-06-26
| | | | | | | | | | | | | | It's been outclassed by Valgrind and leak sanitizer, and it seems to be causing problems for external folks building Skia. I'm not sure why our own builds seem unaffected. Latest thread: https://groups.google.com/forum/#!topic/skia-discuss/oj9FsQwwSF0 BUG=skia: Review URL: https://codereview.chromium.org/1217573002
* Move GLSL-specific routines/classes to separate glsl directoryGravatar jvanverth2015-06-24
| | | | | | | The purpose is to begin separating our GLSL-specific code from our GL-specific code, so it can be used with the GL45 platform Review URL: https://codereview.chromium.org/1202293002
* fix for calling bindFragDataLocation on OpenGL 2.1Gravatar joshualitt2015-06-22
| | | | | | BUG=skia:3966 Review URL: https://codereview.chromium.org/1201623003
* Import functionality for new GL backendGravatar cdalton2015-06-12
| | | | | | | | | | | | | | | | | | Brings in the following functionality: ARB_draw_instanced ARB_instanced_arrays NV_bindless_texture EXT_direct_state_access KHR_debug Also cleans up some of the NVPR extension loading. BUG=skia: Committed: https://skia.googlesource.com/skia/+/202c4c75fb806f751cf796850bf67fe9793e0643 Review URL: https://codereview.chromium.org/1185573003
* Revert of Import functionality for new GL backend (patchset #2 id:20001 of ↵Gravatar djsollen2015-06-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1185573003/) Reason for revert: breaking multiple builds. For example... https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Ubuntu-GCC-Golo-GPU-GT610-x86_64-Debug-ASAN/builds/667 Original issue's description: > Import functionality for new GL backend > > Brings in the following functionality: > > ARB_draw_instanced > ARB_instanced_arrays > NV_bindless_texture > EXT_direct_state_access > KHR_debug > > Also cleans up some of the NVPR extension loading. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/202c4c75fb806f751cf796850bf67fe9793e0643 TBR=bsalomon@google.com,cdalton@nvidia.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1184863002
* Import functionality for new GL backendGravatar cdalton2015-06-12
| | | | | | | | | | | | | | | | Brings in the following functionality: ARB_draw_instanced ARB_instanced_arrays NV_bindless_texture EXT_direct_state_access KHR_debug Also cleans up some of the NVPR extension loading. BUG=skia: Review URL: https://codereview.chromium.org/1185573003
* Review URL: https://codereview.chromium.org/1166513002Gravatar cdalton2015-06-12
|
* Implement support for mixed sampled render targetsGravatar vbuzinov2015-06-12
| | | | | | | | | | | | | | | | | | Adds a new FBO type kStencil_MSFBOType that is selected whenever NV_framebuffer_mixed_samples extension is available. In this new FBO type a non-msaa color buffer is created with a multisampled stencil buffer attachment. Replaces numSamples() with separate numColorSamples and numStencilSamples methods in RenderTarget. In mixed samples mode non-MSAA codepaths are used to draw simple shapes, while NVPR-rendered paths and text are rendered with a multisampled stencil. BUG=skia:3177 Review URL: https://codereview.chromium.org/1001503002
* Init GrGLSLCaps fields from inside GrGLCapsGravatar cdalton2015-06-10
| | | | | | | | | Fixes circular dependencies by allowing the initialization to be done intertwined. BUG=skia: Review URL: https://codereview.chromium.org/1177053002
* 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
* Add caps overrides to GMsGravatar bsalomon2015-05-27
| | | | Review URL: https://codereview.chromium.org/1158963002
* 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
* rename GrDrawTargetCaps.h to GrCaps.h and move to includeGravatar bsalomon2015-05-22
| | | | Review URL: https://codereview.chromium.org/1135113005
* Make mixed samples contingent on auxiliary extensionsGravatar cdalton2015-05-21
| | | | | | | | | | | | | | | | | | | | | Moves the cap for mixed samples into GrShaderCaps and does not enable it unless we have support for both dual source blending and multisample disable. Creates a dedicated cap for multisample disable. Reconfigures the mixed samples cap to indicate the collective capability of three different extensions: GL_NV_framebuffer_mixed_samples GL_NV_sample_mask_override_coverage GL_EXT_raster_multisample Imports tokens and procedures for GL_EXT_raster_multisample. BUG=skia: Review URL: https://codereview.chromium.org/1151793002
* rename GrDrawTargetCaps to GrCapsGravatar bsalomon2015-05-19
| | | | Review URL: https://codereview.chromium.org/1133123009
* 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
* Implement support for KHR_blend_equation_advancedGravatar cdalton2015-05-06
| | | | | | | | | Uses KHR(or NV)_blend_equation_advanced to implement custom Xfer modes in hardware. BUG=skia: Review URL: https://codereview.chromium.org/1037123003
* Pull out shader-specific caps into GrShaderCaps and GrGLSLCapsGravatar jvanverth2015-04-29
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1116713002
* Use GLSLCaps for creating processor keys and GLSL-specific programsGravatar jvanverth2015-04-28
| | | | | | | | | Effectively all this does is future-proof any GLSL-specific code, as GLSLCaps is just a typedef of GLCaps. BUG=skia: Review URL: https://codereview.chromium.org/1109863004
* Remove legacy NVPR supportGravatar jvanverth2015-04-27
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1110553003
* Rename GrStencilBuffer to GrStencilAttachmentGravatar egdaniel2015-04-16
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1083133002
* GrGLInterface: Add support for NV_framebuffer_mixed_samplesGravatar vbuzinov2015-04-01
| | | | | | | | | Import glCoverageModulation if NV_framebuffer_mixed samples is available BUG=skia:3177 Review URL: https://codereview.chromium.org/993363002
* C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla}Gravatar mtklein2015-03-25
| | | | | | | | | NOPRESUBMIT=true BUG=skia: DOCS_PREVIEW= https://skia.org/?cl=1037793002 Review URL: https://codereview.chromium.org/1037793002
* Some usability ideas around SkTHash.Gravatar mtklein2015-03-20
| | | | | | | | | | | | | | - By default, use new SkGoodHash to hash keys, which is: * for 4 byte values, use SkChecksum::Mix, * for SkStrings, use SkChecksum::Murmur3 on the data, * for other structs, shallow hash the struct with Murmur3. - Expand SkChecksum::Murmur3 to support non-4-byte-aligned data. - Add const foreach() methods. - Have foreach() take a functor, which allows lambdas. BUG=skia: Review URL: https://codereview.chromium.org/1021033002
* Revert of Improve tracking of bound FBOs in GrGLGpu. (patchset #17 id:320001 ↵Gravatar egdaniel2015-03-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/949263002/) Reason for revert: Perf regression on win8 hd7700 gpu skps Original issue's description: > Improve tracking of bound FBOs in GrGLGpu. > > Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0 > > Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589 > > Committed: https://skia.googlesource.com/skia/+/0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef > > Committed: https://skia.googlesource.com/skia/+/6ba6fa15261be591f33cf0e5df7134e4fc6432ac > > Committed: https://skia.googlesource.com/skia/+/dc963b9264908f53650c40a97cff414101dd3e88 > > Committed: https://skia.googlesource.com/skia/+/160f24ce0e8d6dd7ca80b78871e063d4f4609cfb TBR=bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1009563003
* Improve tracking of bound FBOs in GrGLGpu.Gravatar bsalomon2015-03-17
| | | | | | | | | | | | | | Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0 Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589 Committed: https://skia.googlesource.com/skia/+/0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef Committed: https://skia.googlesource.com/skia/+/6ba6fa15261be591f33cf0e5df7134e4fc6432ac Committed: https://skia.googlesource.com/skia/+/dc963b9264908f53650c40a97cff414101dd3e88 Review URL: https://codereview.chromium.org/949263002
* Revert of Improve tracking of bound FBOs in GrGLGpu. (patchset #16 id:300001 ↵Gravatar bsalomon2015-03-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/949263002/) Reason for revert: locally hit assert. Original issue's description: > Improve tracking of bound FBOs in GrGLGpu. > > Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0 > > Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589 > > Committed: https://skia.googlesource.com/skia/+/0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef > > Committed: https://skia.googlesource.com/skia/+/6ba6fa15261be591f33cf0e5df7134e4fc6432ac > > Committed: https://skia.googlesource.com/skia/+/dc963b9264908f53650c40a97cff414101dd3e88 TBR=egdaniel@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1017803002
* Improve tracking of bound FBOs in GrGLGpu.Gravatar bsalomon2015-03-17
| | | | | | | | | | | | Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0 Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589 Committed: https://skia.googlesource.com/skia/+/0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef Committed: https://skia.googlesource.com/skia/+/6ba6fa15261be591f33cf0e5df7134e4fc6432ac Review URL: https://codereview.chromium.org/949263002
* Revert of Improve tracking of bound FBOs in GrGLGpu. (patchset #12 id:220001 ↵Gravatar bsalomon2015-03-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/949263002/) Reason for revert: That one needs to be reverted to fix black boxes with GPU raster, and GPU bot failures. BUG=466690 Original issue's description: > Improve tracking of bound FBOs in GrGLGpu. > > Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0 > > Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589 > > Committed: https://skia.googlesource.com/skia/+/0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef > > Committed: https://skia.googlesource.com/skia/+/6ba6fa15261be591f33cf0e5df7134e4fc6432ac TBR=egdaniel@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1011493002
* Improve tracking of bound FBOs in GrGLGpu.Gravatar bsalomon2015-03-04
| | | | | | | | | | Committed: https://skia.googlesource.com/skia/+/d2ad8eb5801e2c8c0fa544a6a776bb46eedde2a0 Committed: https://skia.googlesource.com/skia/+/b2af2d8b83ca4774c3b3bb1e49bc72605faa9589 Committed: https://skia.googlesource.com/skia/+/0b70b86a7e9fda52ee7ebc1b9897eeaa09b9abef Review URL: https://codereview.chromium.org/949263002
* Port GrGLCaps over to use SkTHash.Gravatar mtklein2015-02-20
| | | | | | | | | | | | | I've written some new hashtable interfaces that should be easier to use, and I've been trying to roll them out bit by bit, hopefully replacing SkTDynamicHash, SkTMultiMap, SkTHashCache, etc. This turns the cache in GrGLCaps::readPixelsSupported() into an SkTHashMap, mapping the format key to a bool. Functionally, it's the same. BUG=skia: Review URL: https://codereview.chromium.org/948473002
* Move most of the transform logic into the primitive processorsGravatar joshualitt2015-01-13
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/822423004
* fix for FB fetch on nexus 10 ES3.0Gravatar joshualitt2015-01-13
| | | | | | BUG=skia:3304 Review URL: https://codereview.chromium.org/807143006