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,
);