mipRadianceLayoutSupported property
bool
get
mipRadianceLayoutSupported
Whether the active Flutter GPU backend can build and sample the mip radiance layout: rendering into non-zero mip levels plus sampling hand-written mip chains.
Currently false on the native GLES backend (Impeller does not yet
implement render-to-mip-level there), where new environments build
the legacy band atlas regardless of useMipRadianceLayout. On native
Android the capability bits over-report (some engines clamp every
Vulkan sampler to the base mip level on Adreno GPUs, see
https://github.com/flutter/flutter/issues/161283), so support there is
measured at startup by probePlatformMipSampling and devices where the
clamp is active stay on the atlas.
Implementation
static bool get mipRadianceLayoutSupported => shouldUseMipRadianceLayout(
isWeb: kIsWeb,
targetPlatform: defaultTargetPlatform,
backendSupportsMips:
gpu.gpuContext.doesSupportFramebufferRenderMipmap &&
gpu.gpuContext.doesSupportManuallyMippedTextures,
platformMipSamplingWorks: platformMipSamplingWorks,
);