New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Impeller] Ensure optimized out uniforms don't alter offsets #116900
Comments
From #116850 |
Current exception:
|
The runtime stage data for the MSL compiler drops the unused variable from the SPIRV ir declaration. The generated shader also skips the offset for the optimized out value. We'd need to update the metadata to retain the unused variable with some additional metadata that informs the runtime how to handle the mapping |
Need to check if this is handled after the re-mapping work |
Is this still necessary? |
yes |
would be nice if we could get an ordered list of uniform with their name and type, from a fragmentProgram at runtime.. so the final flutter code can handle all cases directly.. |
This has caught me out too, didn't appreciate that unused uniforms were being removed and subsequent offsets changing. If there could be a better way to reference the uniform, maybe by name and with type safety, that would be very helpful. |
Also encountering this bug :( |
This is super annoying, please fix 🙏 |
Same problem. Completely stuck. Testing on iPhone 12 Pro. iOS 16.3 |
same waiting for a fix to continue my shader flutter project.. working on swift one during this time.. |
Basically if we optimize out a uniform, the existing mappings need to work even if we never set the value in runtime_effect.cc
The text was updated successfully, but these errors were encountered: