mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
Towards implementing the FragmentProgram API in Impeller. Specifies an Impeller specific format for data the renderer can use to create pipelines with user supplied shader stages at runtime. The data is in the form of a flatbuffer with a known schema. This patch implements the wire format, creating and loading the program payloads, and creating pipeline state objects using these payloads. If the user supplied SPIRV intended for the older API, the loader will reject this invalid payload. This is probably not going to be too much of an issue because the FragmentProgram API will probably be modified to only allow buffers loaded from asset managers. But still, in the meantime, I am using the old API to pass these new buffers. Fixes https://github.com/flutter/flutter/issues/104750 Fixes https://github.com/flutter/flutter/issues/105542 Towards resolving https://github.com/flutter/flutter/issues/102853
[Impeller] Allow for the specification of pipeline stage information at runtime. (flutter/engine#33882)
[Impeller] Allow for the specification of pipeline stage information at runtime. (flutter/engine#33882)
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%