Skip to content

[Impeller] Shader render upside down using impeller engine with OpenGLES backend #169429

@laishere

Description

@laishere

Steps to reproduce

  1. Clone repo: https://github.com/laishere/impeller_upside_down
  2. Run the app on android (I tested the result on android-arm64 emulator API 30)

Expected results

The texture should be rendered correctly.

Actual results

The texture is rendered upside down on y axis.

Code sample

Check the demo repo.

Screenshots or Video

Screenshots / Video demonstration

Logs

Logs
E/flutter (24330): [ERROR:flutter/impeller/toolkit/egl/egl.cc(56)] EGL Error: Success (12288) in ../../../flutter/impeller/toolkit/egl/display.cc:161
I/flutter (24330): [IMPORTANT:flutter/shell/platform/android/android_context_gl_impeller.cc(94)] Using the Impeller rendering backend (OpenGLES).

Flutter Doctor output

Doctor output
[✓] Flutter (Channel stable, 3.32.0, on macOS 15.5 24F74 darwin-arm64, locale
    zh-Hans-CN) [1,772ms]
    • Flutter version 3.32.0 on channel stable at /Users/laishere/sdk/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision be698c48a6 (6 days ago), 2025-05-19 12:59:14 -0700
    • Engine revision 1881800949
    • Dart version 3.8.0
    • DevTools version 2.45.1

[✓] Android toolchain - develop for Android devices (Android SDK version 35.0.1)
    [3.1s]
    • Android SDK at /Users/laishere/sdk/Android
    • Platform android-35, build-tools 35.0.1
    • Java binary at: /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.5+-13047016-b750.29)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS (Xcode 16.1) [1,796ms]
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 16B40
    ✗ CocoaPods not installed.
        CocoaPods is a package manager for iOS or macOS platform code.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/to/platform-plugins
      For installation instructions, see
      https://guides.cocoapods.org/using/getting-started.html#installation

[✓] Chrome - develop for the web [8ms]
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2024.2) [7ms]
    • 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 21.0.5+-13047016-b750.29)

[✓] VS Code (version 1.100.2) [6ms]
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.110.0

[✓] Connected device (4 available) [6.0s]
    • sdk gphone arm64 (mobile) • emulator-5554             • android-arm64  •
      Android 11 (API 30) (emulator)
    • la iPhone (mobile)        • 00008140-000935E00CF1801C • ios            •
      iOS 18.5 22F76
    • macOS (desktop)           • macos                     • darwin-arm64   •
      macOS 15.5 24F74 darwin-arm64
    • Chrome (web)              • chrome                    • web-javascript •
      Google Chrome 136.0.7103.114

[✓] Network resources [1,173ms]
    • All expected network resources are available.

Metadata

Metadata

Assignees

Labels

P2Important issues not at the top of the work listc: renderingUI glitches reported at the engine/skia or impeller rendering levele: impellerImpeller rendering backend issues and features requestsengineflutter/engine related. See also e: labels.found in release: 3.32Found to occur in 3.32found in release: 3.33Found to occur in 3.33has reproducible stepsThe issue has been confirmed reproducible and is ready to work onr: fixedIssue is closed as already fixed in a newer versionteam-engineOwned by Engine teamtriaged-engineTriaged by Engine team

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions