v3.32.0 introduced alpha fringe artifacts with blend modes (multiply, overlay) on iOS
- Dominant language
- Dart
- Stars
- 179k
- Forks
- 31.1k
- PR merge metrics
- PR metrics pending
Description
### Steps to reproduce
1. Load this up: https://github.com/gnarhard/flutter_alpha_fringe_artifacts
2. Use the latest iOS simulator.
3. See the long lines from the image that shouldn't be there.
This was introduced in v3.32.0. Version 3.29.3 doesn't have this issue.
### Expected results
No lines should be protruding from the image.
### Actual results
Lines seem to protrude from the tranparent pixels along the outer edges of the "void1" image.
### Code sample
```dart
class MyGame extends FlameGame with SingleGameInstance {
@override
Future onLoad() async {
await Flame.device.setLandscape();
await Flame.device.fullScreen();
camera = CameraComponent.withFixedResolution(
width: size.x,
height: size.y,
world: world,
viewfinder: Viewfinder()..anchor = Anchor.topLeft,
);
add(camera);
world.add(
RectangleComponent(
size: size,
paint: Paint()..color = Colors.white.withAlpha(100),
anchor: Anchor.center,
position: size / 2,
children: [
SpriteComponent(
sprite: await loadSprite('void1.png'),
position: size / 2,
paint: Paint()
..isAntiAlias = true
..filterQuality = FilterQuality.none
..blendMode = BlendMode.overlay,
),
],
),
);
}
}
```
### Screenshots or Video
### Logs
### Flutter Doctor output
```console
[✓] Flutter (Channel stable, 3.32.5, on macOS 15.5 24F74 darwin-arm64, locale en-US) [700ms]
• Flutter version 3.32.5 on channel stable at /Users/gerhard/Code/Utilities/flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision fcf2c11572 (2 weeks ago), 2025-06-24 11:44:07 -0700
• Engine revision dd93de6fb1
• Dart version 3.8.1
• DevTools version 2.45.1
[✓] Android toolchain - develop for Android devices (Android SDK version 36.0.0) [4.4s]
• Android SDK at /Users/gerhard/Library/Android/sdk
• Platform android-36, build-tools 36.0.0
• ANDROID_HOME = /Users/gerhard/Library/Android/sdk
• Java binary at: /Users/gerhard/Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
This is the JDK bundled with the latest Android Studio installation on this machine.
To manually set the JDK path, use: `flutter config --jdk-dir="path/to/jdk"`.
• Java version OpenJDK Runtime Environment (build 21.0.6+-13391695-b895.109)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 16.4) [1,759ms]
• Xcode at /Applications/Xcode.app/Contents/Developer
• Build 16F6
• CocoaPods version 1.16.2
[✓] Chrome - develop for the web [13ms]
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 2025.1) [12ms]
• Android Studio at /Users/gerhard/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 21.0.6+-13391695-b895.109)
[✓] VS Code (version 1.101.2) [10ms]
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.114.0
[✓] Connected device (7 available) [11.3s]
• sdk gphone64 arm64 (mobile) • emulator-5554 • android-arm64 • Android 14 (API 34) (emulator)
• Grayson’s iPhone (wireless) (mobile) • 00008120-000A64E42E32601E • ios • iOS 18.5 22F76
• Grayson’s iPod touch (mobile) • a4fc153eef0bca20b100f532aff4e65a2611a9a7 • ios • iOS 15.8.4 19H390
• Grayson’s iPad (wireless) (mobile) • 00008112-001569A20AC1A01E • ios • iOS 18.5 22F76
• iPhone 16 (mobile) • 703C4732-CD77-4BA3-A63C-42C60819B989 • ios • com.apple.CoreSimulator.SimRuntime.iOS-18-5 (simulator)
• macOS (desktop) • macos • darwin-arm64 • macOS 15.5 24F74 darwin-arm64
• Chrome (web) • chrome • web-javascript • Google Chrome 138.0.7204.100
[✓] Network resources [419ms]
• All expected network resources are available.
• No issues found!
```
Contributor guide
Assessment
This issue has not been assessed yet.