mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
glBlitFramebuffer to implicit MSAA resolution. (flutter/engine#47282)
Closes https://github.com/flutter/flutter/issues/137093. This widens supports from Open GLES 3.x to Open GLES 2.x, and uses [ARM GPU Best Practices](https://developer.arm.com/documentation/101897/0301/Fragment-shading/Multisampling-for-OpenGL-ES): > Do not use `glBlitFramebuffer()` to implement a multisample resolve. This PR: - Removes usage of `glBlitFramebuffer` - Adds the capability check, `SupportsImplicitResolvingMSAA`, which is `false` outside of GLES - Does not discard color attachments resolved by `EXT_multisampled_render_to_texture` (done implicitly) I spoke to @jonahwilliams about the changes to the HAL, who I believe also talked to @bdero about it. The short explantation is that, with the `EXT_multisampled_render_to_texture`, we can be more efficient by letting GLES perform multisampled rendering for us (no per-sample data is written out). See also https://registry.khronos.org/OpenGL/extensions/EXT/EXT_multisampled_render_to_texture.txt for details.
Description
Flutter makes it easy and fast to build beautiful apps for mobile and beyond
androidapp-frameworkcross-platformdartdart-platformdesktopflutterflutter-packagefuchsiaioslinux-desktopmacosmaterial-designmobilemobile-developmentskiawebweb-frameworkwindows
2.5 GiB
Languages
Dart
75%
C++
16.5%
Objective-C++
2.9%
Java
2.8%
Objective-C
0.7%
Other
1.9%