cdalton
793dc26ca6
Improve GLSL integer support
...
- Adds shader types for uint.
- Adds a cap for integer support.
- Uses glVertexAttribIPointer for integer attribs.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1669853002
Committed: https://skia.googlesource.com/skia/+/3a2caf8ecf38124f4ad21a0f6c4dabfcfa17911a
Review URL: https://codereview.chromium.org/1669853002
2016-02-08 10:11:47 -08:00
dcheng
c4d196c9c8
Revert of Improve GLSL integer support (patchset #1 id:1 of https://codereview.chromium.org/1669853002/ )
...
Reason for revert:
MSAN bots are unhappy with this change: https://build.chromium.org/p/chromium.memory.fyi/builders/Linux%20ChromeOS%20MSan%20Tests/builds/7068
Original issue's description:
> Improve GLSL integer support
>
> - Adds shader types for uint.
> - Adds a cap for integer support.
> - Uses glVertexAttribIPointer for integer attribs.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1669853002
>
> Committed: https://skia.googlesource.com/skia/+/3a2caf8ecf38124f4ad21a0f6c4dabfcfa17911a
TBR=bsalomon@google.com ,egdaniel@google.com,ethannicholas@google.com,cdalton@nvidia.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/1674813004
2016-02-06 15:08:55 -08:00
cdalton
3a2caf8ecf
Improve GLSL integer support
...
- Adds shader types for uint.
- Adds a cap for integer support.
- Uses glVertexAttribIPointer for integer attribs.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1669853002
Review URL: https://codereview.chromium.org/1669853002
2016-02-05 16:26:32 -08:00
cdalton
af8bc7d7a4
Add support for GL_EXT_raster_multisample
...
Updates the GrGLGpu to call glRasterSamplesEXT when multisample is
enabled for a mixed sampled render target, but the stencil test is not
active.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1666563003
Review URL: https://codereview.chromium.org/1666563003
2016-02-05 09:35:20 -08:00
ethannicholas
2279325d53
added support for PLS path rendering
...
BUG=skia:3555
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1541903002
Committed: https://skia.googlesource.com/skia/+/7df3f5e127f8016d17b637cc48a6a4718f1a6822
Review URL: https://codereview.chromium.org/1541903002
2016-01-30 09:59:10 -08:00
ethannicholas
5366a09ed0
Revert of added support for PLS path rendering (patchset #16 id:360001 of https://codereview.chromium.org/1541903002/ )
...
Reason for revert:
ASAN failure at src/gpu/GrXferProcessor.cpp:224
Original issue's description:
> added support for PLS path rendering
>
> BUG=skia:3555
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1541903002
>
> Committed: https://skia.googlesource.com/skia/+/7df3f5e127f8016d17b637cc48a6a4718f1a6822
TBR=bsalomon@google.com ,egdaniel@google.com,joshualitt@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:3555
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1626553002
Review URL: https://codereview.chromium.org/1626553002
2016-01-22 09:45:47 -08:00
ethannicholas
7df3f5e127
added support for PLS path rendering
...
BUG=skia:3555
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1541903002
Review URL: https://codereview.chromium.org/1541903002
2016-01-22 06:48:46 -08:00
egdaniel
eed519e6a2
Differentiate maxColorSamples and maxStencilSamples in GrCaps
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1592803002
Review URL: https://codereview.chromium.org/1592803002
2016-01-15 11:36:18 -08:00
joshualitt
4897ff20fc
Move atomicinc in GrTracing to behind branch
...
TBR=bsalomon@google.com
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1571603003
Review URL: https://codereview.chromium.org/1571603003
2016-01-11 08:30:48 -08:00
bsalomon
41e4384ea0
Move config texturability/renderability to config table.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1563443002
Committed: https://skia.googlesource.com/skia/+/32a3cd2f2860b15a842a6aa49e4e6a3bed04f949
Review URL: https://codereview.chromium.org/1563443002
2016-01-08 09:12:44 -08:00
egdaniel
4999df8ca2
Revert of Move config texturability/renderability to config table (patchset #8 id:140001 of https://codereview.chromium.org/1563443002/ )
...
Reason for revert:
speculative revert for breaking iOS writePixels tests
Original issue's description:
> Move config texturability/renderability to config table.
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1563443002
>
> Committed: https://skia.googlesource.com/skia/+/32a3cd2f2860b15a842a6aa49e4e6a3bed04f949
TBR=jvanverth@google.com ,bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1569103003
2016-01-07 17:06:04 -08:00
bsalomon
32a3cd2f28
Move config texturability/renderability to config table.
...
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1563443002
Review URL: https://codereview.chromium.org/1563443002
2016-01-07 13:00:11 -08:00
robertphillips
2eb1009b6e
Add check for highp support in Conic effect
...
This CL may not really be necessary since it seems that the Android Ones we have fall back to mediump when highp isn't supported.
FYI, for bits-of-precision/precision we have:
Low Med High Precision-Used
A1 (Cherry One - Mali 400) 10 10 0 Med - conic looks bad
N5 (Adreno 330) 10 10 23 High - conic looks bad!!!
N6 (Adreno 420) 10 10 23 High - conic looks good
N7v2 (Adreno 320) 10 10 23 High - conic looks bad!!!
N9 (K1) 23 23 23 High - looks good
N10 (Mail-604) 10 10 23 High - looks good
I suspect derivative computation is broken on the Adreno 300s.
BUG=555779,skia:4668
TBR=bsalomon@google.com
Review URL: https://codereview.chromium.org/1513573009
2015-12-11 04:59:36 -08:00
cdalton
7e806f3f8a
Revert of Enable stencil clipping in mixed sampled render targets (patchset #6 id:100001 of https://codereview.chromium.org/1232103002/ )
...
Reason for revert:
Co-centered sample locations are not needed to do stencil clip with mixed samples
Original issue's description:
> Implement stencil clipping in mixed sampled render targets
>
> 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
>
> Committed:
> https://skia.googlesource.com/skia/+/3e77ba96d56d15db30ac6d8ccb900e30aafcbb16
BUG=skia:
Review URL: https://codereview.chromium.org/1415873011
2015-11-11 15:16:07 -08:00
robertphillips
caef345048
Readd "immediate" mode
...
This isn't an exact replacement. The accumulated batches are now flushed at drawContext-entry-point granularity (via the AutoCheckFlush objects) rather than per batch.
TBR=bsalomon@google.com
Review URL: https://codereview.chromium.org/1439533003
2015-11-11 13:18:11 -08:00
cdalton
d472792a72
Revert of Fix mixed samples stencil clip (patchset #5 id:80001 of https://codereview.chromium.org/1431593006/ )
...
Reason for revert:
Co-centered sample locations are not needed to do stencil clip with mixed samples.
Original issue's description:
> Fix mixed samples stencil clip
>
> 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.
>
> Committed: https://skia.googlesource.com/skia/+/14184d5567b58085b6d8a6375796d405056f7f73
TBR=bsalomon@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1407063011
2015-11-10 12:49:06 -08:00
cdalton
14184d5567
Fix mixed samples stencil clip
...
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
2015-11-09 15:12:19 -08:00
cdalton
63f6c1fc5b
Loosen requirements for mixed samples support
...
Quits requiring EXT_raster_multisample and
NV_sample_mask_override_coverage for mixed samples support. This will
allow platforms without those latter extensions (i.e. Chrome) to still
use mixed samples for path rendering. Also moves the mixed samples cap
out of shader caps, since it no longer denotes shader functionality.
BUG=skia:
Review URL: https://codereview.chromium.org/1410383011
2015-11-06 07:09:43 -08:00
egdaniel
b7e7d5748d
Create swizzle table inside of glsl caps
...
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/4036674952f341dab0695c3b054fefa5bb8cdec1
Review URL: https://codereview.chromium.org/1420033005
2015-11-04 04:23:53 -08:00
egdaniel
0c2999974d
Revert of Create swizzle table inside of glsl caps (patchset #12 id:210001 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
2015-11-03 10:33:14 -08:00
egdaniel
4036674952
Create swizzle table inside of glsl caps
...
BUG=skia:
Review URL: https://codereview.chromium.org/1420033005
2015-11-03 08:15:29 -08:00
bsalomon
8c07b7ab53
Allow max tile size to be overridden separately from max texture size.
...
This allows internal Gr texture creation code to succeed for extraneous textures while running the bleed GM. This means we can turn on the shader variants.
Review URL: https://codereview.chromium.org/1418473004
2015-11-02 11:36:52 -08:00
bsalomon
100b8f8c07
Remove min texture size support
...
BUG=skia:4524
Review URL: https://codereview.chromium.org/1430643002
2015-10-28 08:37:44 -07:00
vbuzinov
3e77ba96d5
Implement stencil clipping in mixed sampled render targets
...
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
2015-09-30 23:02:06 -07:00
robertphillips
63926683c5
Add ANGLE workaround to prefer flushes over VRAM usage
...
On the whole, https://codereview.chromium.org/1286203002/ (Defer flushes if kPreferNoIO is specified) improved performance but it did cause a performance regression on ANGLE. This CL disables the deferral of flushes on ANGLE until we can add a separate incremental flushing mechanism.
TBR=bsalomon@google.com
BUG=skia:4201
BUG=521529
Review URL: https://codereview.chromium.org/1287193008
2015-08-20 09:39:02 -07:00
bsalomon
7dea7b7df1
Use calloc to allocate data that will be uploaded to vertex/index buffers in Chrome
...
BUG=chromium:454267
BUG=chromium:522315
Review URL: https://codereview.chromium.org/1300123002
2015-08-19 08:26:51 -07:00
egdaniel
51c8d409ad
Move some work from backend onClear to base class clear
...
BUG=skia:
Review URL: https://codereview.chromium.org/1275543005
2015-08-06 10:54:13 -07:00
bsalomon
16921ec30a
SRGB read and write pixels working and unit test
...
Review URL: https://codereview.chromium.org/1264003002
2015-07-30 15:34:56 -07:00
joshualitt
58001553ec
add drawArraysInstanced to caps
...
BUG=skia:
Review URL: https://codereview.chromium.org/1202383006
2015-06-26 12:46:36 -07:00
mtklein
2766c00fc0
remove SkInstCnt
...
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
2015-06-26 11:45:03 -07:00
robertphillips
1b8e1b5c49
Refactor GrBufferAllocPools to use resource cache
...
Committed: https://skia.googlesource.com/skia/+/e935f1a0e2351373c33600b8388492ce1218014a
Review URL: https://codereview.chromium.org/1139753002
2015-06-24 06:54:10 -07:00
robertphillips
b607767703
Revert of Refactor GrBufferAllocPools to use resource cache (patchset #15 id:280001 of https://codereview.chromium.org/1139753002/ )
...
Reason for revert:
Will reland after Chromium branch
Original issue's description:
> Refactor GrBufferAllocPools to use resource cache
>
> Committed: https://skia.googlesource.com/skia/+/e935f1a0e2351373c33600b8388492ce1218014a
TBR=bsalomon@google.com ,joshualitt@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1204773003
2015-06-23 12:36:12 -07:00
robertphillips
e935f1a0e2
Refactor GrBufferAllocPools to use resource cache
...
Review URL: https://codereview.chromium.org/1139753002
2015-06-23 08:23:08 -07:00
joshualitt
83bc229703
Work around for nexus 6 TexSubImage issue
...
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/c69fe20ef35df0776b179cbd5ce4d1bdc0ba4090
Review URL: https://codereview.chromium.org/1173203005
2015-06-18 14:18:03 -07:00
joshualitt
274980cda1
Revert of Work around for nexus 6 TexSubImage issue (patchset #4 id:60001 of https://codereview.chromium.org/1173203005/ )
...
Reason for revert:
breaks gms
Original issue's description:
> Work around for nexus 6 TexSubImage issue
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/c69fe20ef35df0776b179cbd5ce4d1bdc0ba4090
TBR=bsalomon@google.com ,joshualitt@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1190463006
2015-06-18 11:49:18 -07:00
joshualitt
c69fe20ef3
Work around for nexus 6 TexSubImage issue
...
BUG=skia:
Review URL: https://codereview.chromium.org/1173203005
2015-06-18 11:07:09 -07:00
cdalton
1dd0542ca3
Review URL: https://codereview.chromium.org/1166513002
2015-06-12 09:01:19 -07:00
cdalton
4cd6713af1
Init GrGLSLCaps fields from inside GrGLCaps
...
Fixes circular dependencies by allowing the initialization to be done
intertwined.
BUG=skia:
Review URL: https://codereview.chromium.org/1177053002
2015-06-10 19:23:46 -07:00
joshualitt
e5b74c6856
Set GeometryBufferMapThreshold defaults
...
TBR=bsalomon@google.com
BUG=skia:
Review URL: https://codereview.chromium.org/1161543003
2015-06-01 14:17:47 -07:00
bsalomon
c59a1df655
Stretch small textures up to 16 pixels on PowerVR 54x
...
Review URL: https://codereview.chromium.org/1161183002
2015-06-01 07:13:42 -07:00
joshualitt
7224c86632
add context override of GeometryBufferMapThreshold
...
BUG=skia:
Review URL: https://codereview.chromium.org/1159713006
2015-05-29 06:46:47 -07:00
bsalomon
4ee6bd86c5
Add caps overrides to GMs
...
Review URL: https://codereview.chromium.org/1158963002
2015-05-27 13:23:23 -07:00
bsalomon
682c269a15
Store context options on caps.
...
Committed: https://skia.googlesource.com/skia/+/f28cff71db2cbb1ff18a8fbf1e80ca761d1f69bc
Review URL: https://codereview.chromium.org/1158433006
2015-05-22 14:01:46 -07:00
bsalomon
08bf86d1b7
Revert of Store context options on caps. (patchset #3 id:40001 of 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
2015-05-22 12:41:05 -07:00
bsalomon
f28cff71db
Store context options on caps.
...
Review URL: https://codereview.chromium.org/1158433006
2015-05-22 12:25:41 -07:00
bsalomon
424cc26add
Remove init from GrGLContextInfo and caps classes
...
Make Gr*Caps, GrGLContext* noncopyable
Review URL: https://codereview.chromium.org/1153813002
2015-05-22 10:37:30 -07:00
bsalomon
eb1cb5c5b5
rename GrDrawTargetCaps.h to GrCaps.h and move to include
...
Review URL: https://codereview.chromium.org/1135113005
2015-05-22 08:01:09 -07:00