Skip to content

[Impeller] Compiler does not generate a runtime stage with valid SPIR-V with --runtime-stage-vulkan #129659

Description

@chinmaygarde

Pre-requisite to #122823.

Activity

  1. added
    engineflutter/engine related. See also e: labels.
    e: impellerImpeller rendering backend issues and features requests
    on Jun 27, 2023
  2. moved this to 🤔 Needs Triage in Impelleron Jun 27, 2023
  3. moved this from 🤔 Needs Triage to 🖖 Vulkan in Impelleron Jun 27, 2023
  4. self-assigned this
    on Jul 5, 2023
  5. added
    P1High-priority issues at the top of the work list
    on Jul 5, 2023
  6. removed their assignment
    on Jul 12, 2023
  7. self-assigned this
    on Nov 17, 2023
  8. dnfield commented on Nov 20, 2023

    @dnfield
    Contributor

    There's a bit of a hang up here.

    Right now, runtime stage shaders are all written using GLSL semantics for uniforms, e.g.

    layout(location = 0) uniform float a;

    But in Vulkan semantics, that's not allowed, it'd have to be in a UBO or as a push constant.

    We need to figure out what to do here. One option is to require users to write variants of their shaders under Vulkan and GL semantics, which is not great for users.

    Another option is to see if we can get SPIRV Cross to rewrite the GLSL style uniforms into UBOs or push constants, which is a little more involved.

  9. chinmaygarde commented on Nov 20, 2023

    @chinmaygarde
    ContributorAuthor

    The first option isn't viable. The rewrite should be possible though.

  10. dnfield commented on Nov 22, 2023

    @dnfield
    Contributor

    google/shaderc#1380 should make the second option feasible.

  11. moved this from 🖖 Vulkan to ⚙️ In Progress in Impelleron Dec 2, 2023
  12. dnfield commented on Jan 3, 2024

    @dnfield
    Contributor

    Quick update for anyone that cares about this: I did GLES before doing this one. The shaderc patch is rolled into the engine. Once my patch to impellerc to let it encode more runtime stage types into a single IPLR file lands, I'll be looking at this.

  13. moved this from ⚙️ In Progress to ✅ Done in Impelleron Jan 11, 2024
  14. github-actions commented on Jan 25, 2024

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  15. locked as resolved and limited conversation to collaborators on Jan 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

P1High-priority issues at the top of the work liste: impellerImpeller rendering backend issues and features requestsengineflutter/engine related. See also e: labels.team-engineOwned by Engine teamtriaged-engineTriaged by Engine team

Type

No type

Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions