Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit d98926c

Browse files
[Impeller] Add and reorder FAQ entries. (#39106)
* [Impeller] Add and reorder FAQ entries. * Update impeller/docs/faq.md Co-authored-by: Loïc Sharma <[email protected]> Co-authored-by: Loïc Sharma <[email protected]>
1 parent acb5610 commit d98926c

File tree

1 file changed

+61
-15
lines changed

1 file changed

+61
-15
lines changed

impeller/docs/faq.md

Lines changed: 61 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,53 @@
11
# Frequently Asked Questions
22

3-
* How do you run `impeller_unittests` with Playgrounds enabled?
4-
* Playgrounds in the `impeller_unittests` harness can be enabled in one of
5-
three ways:
6-
* Edit `gn args` directly and add `impeller_enable_playground = true`.
7-
* Add the `--enable-impeller-playground` flag to your `./flutter/tools/gn`
8-
invocation.
9-
* Set the `FLUTTER_IMPELLER_ENABLE_PLAYGROUND` to `1` before invoking
10-
`./flutter/tools/gn`. Only do this if you frequently work with Playgrounds
11-
and don't want to have to set the flags manually. Also, it would be a bad
12-
idea to set this environment variable on CI.
3+
* How do I enable Impeller to try it out myself?
4+
* See the instructions in the README on how to [try Impeller in
5+
Flutter](https://github.com/flutter/engine/tree/main/impeller#try-impeller-in-flutter).
6+
* Support on some platforms is further along than on others. The current
7+
priority for the team is to support iOS, Android, Desktops, and Embedder API
8+
users (in that rough order).
9+
* I am running into issues when Impeller is enabled, how do I report them?
10+
* Like any other Flutter issue, you can report them on the [GitHub issue
11+
tracker](https://github.com/flutter/flutter/issues/new/choose).
12+
* Please explicitly mention that this is an Impeller specific regression. You
13+
can quickly swap between the Impeller and Skia backends using the command
14+
line flag flag detailed in [section in the README on how to try
15+
Impeller](https://github.com/flutter/engine/tree/main/impeller#try-impeller-in-flutter).
16+
* Reduced test cases are the most useful.
17+
* Please also report any performance regressions.
18+
* What does it mean for an Impeller platform to be "in preview". How long will
19+
be the preview last?
20+
* The team is focused on getting one platform right at time. This includes
21+
ensuring all fidelity issues are fixed, performance issues addressed, and
22+
compatibility with plugins guaranteed.
23+
* When the team believes that the majority of Flutter applications will
24+
benefit from Impeller on a specific platform, the backend will be declared
25+
to be in preview.
26+
* During the preview, Flutter developers will need to opt in to using
27+
Impeller.
28+
* The top priority of the team will be to address issues reported by
29+
developers opting into the preview. The team wants the preview phase for a
30+
platform to be as short as possible.
31+
* Once major issues reported by platforms in preview become manageable, the
32+
preview ends and Impeller becomes the default rendering backend.
33+
* Besides working on fixing issues reported on platforms in preview, and
34+
working on supporting additional platforms, the team is also undertaking a
35+
high-touch exercise of migrating large existing Flutter applications to use
36+
Impeller. The team will find and fix any issues it encounters during this
37+
exercise.
38+
* The length of the preview will depend on the number and nature of the issues
39+
filed by developers and discovered by the team.
40+
* Even once the preview ends, the developer can opt into the legacy rendering
41+
backend for a short period of time. The legacy backend will be removed after
42+
this period.
43+
* What can I expect when I opt in to using Impeller?
44+
* A high level overview of the status of project is [present on the
45+
wiki](https://github.com/flutter/flutter/wiki/Impeller#status).
46+
* All Impeller related work items are tracked on a [project specific dashboard
47+
on GitHub](https://github.com/orgs/flutter/projects/21).
48+
* The team tracks known platform specific issues in their own milestones:
49+
* [iOS](https://github.com/flutter/flutter/milestone/77)
50+
* [Android](https://github.com/flutter/flutter/milestone/76)
1351
* Does Impeller use Skia for rendering?
1452
* No. Impeller has no direct dependencies on Skia.
1553
* When running with Impeller, Flutter does not create a Skia graphics context.
@@ -45,8 +83,9 @@
4583
priority at this time for the small team working on Impeller.
4684
* We are aware that these priorities might change in the future. There have
4785
been sanity checks to ensure that the Impeller API can be ported to WASM and
48-
also that Impeller shaders can be [compiled to WGSL](https://github.com/chinmaygarde/wgsl_sandbox)
49-
for eventual WebGPU support.
86+
also that Impeller shaders can be [compiled to
87+
WGSL](https://github.com/chinmaygarde/wgsl_sandbox) for eventual WebGPU
88+
support.
5089
* How will Impeller affect the way in which Flutter applications are created and
5190
packaged?
5291
* It won't.
@@ -59,6 +98,13 @@
5998
includes all precompiled shaders.
6099
* Impeller is compiled into the Flutter engine. It is currently behind a flag
61100
as development progresses.
62-
* How do I enable Impeller to try it out myself?
63-
* See the instructions in the README on how to [try Impeller in
64-
Flutter](https://github.com/flutter/engine/tree/main/impeller#try-impeller-in-flutter).
101+
* How do you run `impeller_unittests` with Playgrounds enabled?
102+
* Playgrounds in the `impeller_unittests` harness can be enabled in one of
103+
three ways:
104+
* Edit `gn args` directly and add `impeller_enable_playground = true`.
105+
* Add the `--enable-impeller-playground` flag to your `./flutter/tools/gn`
106+
invocation.
107+
* Set the `FLUTTER_IMPELLER_ENABLE_PLAYGROUND` to `1` before invoking
108+
`./flutter/tools/gn`. Only do this if you frequently work with Playgrounds
109+
and don't want to have to set the flags manually. Also, it would be a bad
110+
idea to set this environment variable on CI.

0 commit comments

Comments
 (0)