Jonah Williams 513906fced [Impeller] Add support for specialization constants (III). (flutter/engine#47765)
Reland of https://github.com/flutter/engine/pull/47432

Also includes:

https://github.com/flutter/engine/pull/47617
https://github.com/flutter/engine/pull/47637

Fixes the performance on iOS by removing blocking on compilation of shaders. From local testing this has identical before/after numbers. Additional, ensures that we don't unecessarily specialize vertex shaders and notes this restriction in the documentation.

Adds support for Specialization constants to Impeller for our usage in the engine. A motivating example has been added in the impeller markdown docs.

Fixes https://github.com/flutter/flutter/issues/136210
Fixes https://github.com/flutter/flutter/issues/119357

Investigating: https://github.com/flutter/flutter/issues/138028
2023-11-08 21:29:42 +00:00
..