gradients |
|
|
SkBitmapProcShader.cpp |
|
2822 |
SkBitmapProcShader.h |
|
764 |
SkBlendShader.cpp |
uniforms= |
4986 |
SkBlendShader.h |
|
1255 |
SkColorFilterShader.cpp |
|
2103 |
SkColorFilterShader.h |
|
1226 |
SkColorShader.cpp |
|
3752 |
SkColorShader.h |
\class SkColorShader
A Shader that represents a single color. In general, this effect can be
accomplished by just using the color field on the paint, but if an
actual shader object is needed, this provides that feature.
|
2417 |
SkCoordClampShader.cpp |
|
2342 |
SkCoordClampShader.h |
|
1208 |
SkEmptyShader.cpp |
|
578 |
SkEmptyShader.h |
\class SkEmptyShader
A Shader that always draws nothing. Its createContext always returns nullptr.
|
1100 |
SkGainmapShader.cpp |
|
8899 |
SkImageShader.cpp |
We are faster in clamp, so always use that tiling when we can.
|
33229 |
SkImageShader.h |
|
3485 |
SkLocalMatrixShader.cpp |
|
2868 |
SkLocalMatrixShader.h |
Replaces the CTM when used. Created to support clipShaders, which have to be evaluated
using the CTM that was present at the time they were specified (which may be different
from the CTM at the time something is drawn through the clip.
|
4270 |
SkPerlinNoiseShaderImpl.cpp |
|
7022 |
SkPerlinNoiseShaderImpl.h |
|
11152 |
SkPerlinNoiseShaderType.h |
About the noise types : the difference between the first two is just minor tweaks to the
algorithm; they're not two entirely different noises. The output looks different, but once the
noise is generated in the [1, -1] range, the output is brought back in the [0, 1] range by doing:
kFractalNoise : noise * 0.5 + 0.5
kTurbulence : abs(noise)
Very little differs between the two types, although you can tell the difference visually.
|
784 |
SkPictureShader.cpp |
|
12888 |
SkPictureShader.h |
An SkPictureShader can be used to draw SkPicture-based patterns.
The SkPicture is first rendered into a tile, which is then used to shade the area according
to specified tiling rules.
|
3145 |
SkRuntimeShader.cpp |
alwaysCopyIntoAlloc= |
6697 |
SkRuntimeShader.h |
|
2288 |
SkShader.cpp |
|
1939 |
SkShaderBase.cpp |
pendingLocalMatrix= |
4950 |
SkShaderBase.h |
This is used to accumulate matrices, starting with the CTM, when building up
SkRasterPipeline or GrFragmentProcessor by walking the SkShader tree. It avoids
adding a matrix multiply for each individual matrix. It also handles the reverse matrix
concatenation order required by Android Framework, see b/256873449.
This also tracks the dubious concept of a "total matrix", in the legacy Context/shadeSpan system.
That includes all the matrices encountered during traversal to the current shader, including ones
that have already been applied. The total matrix represents the transformation from the current
shader's coordinate space to device space. It is dubious because it doesn't account for SkShaders
that manipulate the coordinates passed to their children, which may not even be representable by
a matrix.
The total matrix is used for mipmap level selection and a filter downgrade optimizations in
SkImageShader and sizing of the SkImage created by SkPictureShader. If we can remove usages
of the "total matrix" and if Android Framework could be updated to not use backwards local
matrix concatenation this could just be replaced by a simple SkMatrix or SkM44 passed down
during traversal.
|
16810 |
SkTransformShader.cpp |
|
2156 |
SkTransformShader.h |
|
2058 |
SkTriColorShader.cpp |
|
1841 |
SkTriColorShader.h |
|
2744 |
SkWorkingColorSpaceShader.cpp |
|
2800 |
SkWorkingColorSpaceShader.h |
|
1384 |