Flutter Engine
The Flutter Engine
|
#include <GrDistanceFieldGeoProc.h>
Classes | |
struct | DistanceAdjust |
class | Impl |
Public Member Functions | |
~GrDistanceFieldLCDTextGeoProc () override | |
const char * | name () const override |
void | addNewViews (const GrSurfaceProxyView *, int numActiveViews, GrSamplerState) |
void | addToKey (const GrShaderCaps &, skgpu::KeyBuilder *) const override |
std::unique_ptr< ProgramImpl > | makeProgramImpl (const GrShaderCaps &) const override |
Public Member Functions inherited from GrGeometryProcessor | |
GrGeometryProcessor (ClassID) | |
int | numTextureSamplers () const |
const TextureSampler & | textureSampler (int index) const |
int | numVertexAttributes () const |
const AttributeSet & | vertexAttributes () const |
int | numInstanceAttributes () const |
const AttributeSet & | instanceAttributes () const |
bool | hasVertexAttributes () const |
bool | hasInstanceAttributes () const |
size_t | vertexStride () const |
size_t | instanceStride () const |
virtual void | addToKey (const GrShaderCaps &, skgpu::KeyBuilder *) const =0 |
void | getAttributeKey (skgpu::KeyBuilder *b) const |
virtual std::unique_ptr< ProgramImpl > | makeProgramImpl (const GrShaderCaps &) const =0 |
Public Member Functions inherited from GrProcessor | |
virtual | ~GrProcessor ()=default |
virtual const char * | name () const =0 |
void * | operator new (size_t size) |
void * | operator new (size_t object_size, size_t footer_size) |
void | operator delete (void *target) |
void * | operator new (size_t size, void *placement) |
void | operator delete (void *target, void *placement) |
template<typename T > | |
const T & | cast () const |
ClassID | classID () const |
Static Public Member Functions | |
static GrGeometryProcessor * | Make (SkArenaAlloc *arena, const GrShaderCaps &caps, const GrSurfaceProxyView *views, int numActiveViews, GrSamplerState params, DistanceAdjust distanceAdjust, uint32_t flags, const SkMatrix &localMatrixIfUsesLocalCoords) |
Static Public Member Functions inherited from GrGeometryProcessor | |
static uint32_t | ComputeCoordTransformsKey (const GrFragmentProcessor &fp) |
Static Public Attributes | |
static constexpr int | kMaxTextures = 4 |
Static Public Attributes inherited from GrGeometryProcessor | |
static constexpr int | kCoordTransformKeyBits = 4 |
The output color of this effect is a modulation of the input color and samples from a distance field texture (using a smoothed step function near 0.5), adjusted for LCD displays. It allows explicit specification of the filtering and wrap modes (GrSamplerState). The input coords are a custom attribute. Gamma correction is handled via a texture LUT.
Definition at line 209 of file GrDistanceFieldGeoProc.h.
|
inlineoverride |
Definition at line 243 of file GrDistanceFieldGeoProc.h.
void GrDistanceFieldLCDTextGeoProc::addNewViews | ( | const GrSurfaceProxyView * | views, |
int | numActiveViews, | ||
GrSamplerState | params | ||
) |
Definition at line 835 of file GrDistanceFieldGeoProc.cpp.
|
overridevirtual |
Adds a key on the skgpu::KeyBuilder that reflects any variety in the code that the geometry processor subclass can emit.
Implements GrGeometryProcessor.
Definition at line 857 of file GrDistanceFieldGeoProc.cpp.
|
inlinestatic |
Definition at line 228 of file GrDistanceFieldGeoProc.h.
|
overridevirtual |
Returns a new instance of the appropriate implementation class for the given GrGeometryProcessor.
Implements GrGeometryProcessor.
Definition at line 866 of file GrDistanceFieldGeoProc.cpp.
|
inlineoverridevirtual |
Human-meaningful string to identify this processor; may be embedded in generated shader code and must be a legal SkSL identifier prefix.
Implements GrProcessor.
Definition at line 245 of file GrDistanceFieldGeoProc.h.
|
inlinestaticconstexpr |
Definition at line 211 of file GrDistanceFieldGeoProc.h.