Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Classes | Static Public Member Functions | List of all members
skgpu::graphite::ImageShaderBlock Struct Reference

#include <KeyHelpers.h>

Classes

struct  ImageData
 

Static Public Member Functions

static void AddBlock (const KeyContext &, PaintParamsKeyBuilder *, PipelineDataGatherer *, const ImageData &)
 

Detailed Description

Definition at line 154 of file KeyHelpers.h.

Member Function Documentation

◆ AddBlock()

void skgpu::graphite::ImageShaderBlock::AddBlock ( const KeyContext keyContext,
PaintParamsKeyBuilder builder,
PipelineDataGatherer gatherer,
const ImageData imgData 
)
static

Definition at line 578 of file KeyHelpers.cpp.

581 {
582
583 if (keyContext.recorder() && !imgData.fTextureProxy) {
585 return;
586 }
587
588 const Caps* caps = keyContext.caps();
589 const bool doTilingInHw = !imgData.fSampling.useCubic && can_do_tiling_in_hw(caps, imgData);
590
591 static constexpr SkTileMode kDefaultTileModes[2] = {SkTileMode::kClamp, SkTileMode::kClamp};
592 gatherer->add(imgData.fSampling,
593 doTilingInHw ? imgData.fTileModes : kDefaultTileModes,
594 imgData.fTextureProxy);
595
596 if (doTilingInHw) {
597 add_hw_image_uniform_data(keyContext.dict(), imgData, gatherer);
599 } else if (imgData.fSampling.useCubic) {
600 add_cubic_image_uniform_data(keyContext.dict(), imgData, gatherer);
602 } else {
603 add_image_uniform_data(keyContext.dict(), imgData, gatherer);
605 }
606}
SkTileMode
Definition SkTileMode.h:13
static bool can_do_tiling_in_hw(const Caps *caps, const ImageShaderBlock::ImageData &imgData)

The documentation for this struct was generated from the following files: