Skip to content

[Impeller] ImageFilter.blur is not shown when sigma is greater than 85 #126487

@jmshrv

Description

@jmshrv

Is there an existing issue for this?

Steps to reproduce

  1. Create a blurred image with ImageFiltered with an ImageFilter.blur with the sigmas set to 85 (ImageFilter.blur(sigmaX: 85, sigmaY: 85))
  2. Notice how the image is displayed correctly
  3. Set one (or both) of the sigmas to any value above 85
  4. Notice that the image is no longer shown

Expected results

The image should be shown with a blur sigma above 85, as it does with the Skia backend

Actual results

When the blur sigma is above 85, the image is not shown. Blur sigmas below 85 are not affected.

Code sample

Code sample

Full project, with an image set up: blur_test.zip

import 'dart:ui';

import 'package:flutter/material.dart';

void main() {
  runApp(const MainApp());
}

class MainApp extends StatelessWidget {
  const MainApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: ListView(
          children: [
            ImageFiltered(
              imageFilter: ImageFilter.blur(sigmaX: 85, sigmaY: 85),
              child: Image.asset("assets/flutter.png"),
            ),
            ImageFiltered(
              imageFilter: ImageFilter.blur(sigmaX: 86, sigmaY: 86),
              child: Image.asset("assets/flutter.png"),
            ),
          ],
        ),
      ),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration

With Impeller:

Screenshot of the bug with Impeller. Only one image is shown.

With Skia:

Note that I had to run this in Android, as the steps to disable Impeller described at https://docs.flutter.dev/perf/impeller were not working.

Screenshot of the bug with Skia. Both images are being shown correctly

Logs

Logs

Could not paste due to size of logs

logs.txt

Flutter Doctor output

Doctor output
[✓] Flutter (Channel stable, 3.10.0, on macOS 13.3.1 22E772610a darwin-arm64, locale en-GB)
    • Flutter version 3.10.0 on channel stable at /Users/james/Development/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 84a1e904f4 (35 hours ago), 2023-05-09 07:41:44 -0700
    • Engine revision d44b5a94c9
    • Dart version 3.0.0
    • DevTools version 2.23.1

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.1)
    • Android SDK at /Users/james/Development/Android
    • Platform android-33, build-tools 33.0.1
    • ANDROID_HOME = /Users/james/Development/Android
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3)
    • Xcode at /Applications/Xcode-14.3.0.app/Contents/Developer
    • Build 14E222b
    • CocoaPods version 1.11.3

[✗] Chrome - develop for the web (Cannot find Chrome executable at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[✓] Android Studio (version 2022.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.15+0-b2043.56-8887301)

[✓] VS Code (version 1.78.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.64.0

[✓] Connected device (2 available)
    • iPhone 14 Pro (mobile) • 983AD08A-7BE7-4431-82BB-7B325710EBA4 • ios          • com.apple.CoreSimulator.SimRuntime.iOS-16-2 (simulator)
    • macOS (desktop)        • macos                                • darwin-arm64 • macOS 13.3.1 22E772610a darwin-arm64

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.

Metadata

Metadata

Assignees

Labels

P2Important issues not at the top of the work liste: impellerImpeller rendering backend issues and features requestsengineflutter/engine related. See also e: labels.found in release: 3.10Found to occur in 3.10found in release: 3.11Found to occur in 3.11has reproducible stepsThe issue has been confirmed reproducible and is ready to work onplatform-iosiOS applications specificallyr: fixedIssue is closed as already fixed in a newer version

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions