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

Conversation

@jonahwilliams
Copy link
Contributor

@jonahwilliams jonahwilliams commented Sep 27, 2024

Works on GLFW example app with no validation errors.

@jonahwilliams jonahwilliams changed the title [Impeller] add basic Vulkan support to embedder API. [Impeller] add basic Impeller+Vulkan support to embedder API. Sep 27, 2024
@jonahwilliams
Copy link
Contributor Author

Integration with context vk is a bit messy, since the emebdder expects to provide a lot of objects that context vk was already creating.

@jwinarske
Copy link
Contributor

@jonahwilliams awesome 👍. I'll test it out when I'm back in the office; October 14th.

@jonahwilliams jonahwilliams marked this pull request as ready for review October 4, 2024 03:18
@jwinarske
Copy link
Contributor

Also I haven't looked into it yet, but using the compositor interface bypasses some of the embedder API; Fuschia dev mentioned this. My plans include moving to the compositor interface in the near future.

@jonahwilliams
Copy link
Contributor Author

Sorry I don't follow

auto proc_addr =
vulkan_get_instance_proc_address(vk_instance, "vkGetInstanceProcAddr");

std::shared_ptr<flutter::EmbedderExternalViewEmbedder> view_embedder =
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unrelated: The embedder.cc entrypoint is becoming a monster. We should separate it out into different TUs for easier perursal.

break;
if (enable_impeller) {
FML_LOG(ERROR) << "Unimplemented";
break;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IIRC, this should return nullptr. That should return the right error code to the embedder. We can file a bug for followup.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Breaking here leaves the render_target unique_ptr as nullptr which accomplishes the same thing

auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Oct 29, 2024
flutter/engine@ed587dc...b394e0c

2024-10-29 skia-flutter-autoroll@skia.org Roll Dart SDK from c9180e9de9e8 to 6e55dfe77483 (1 revision) (flutter/engine#56184)
2024-10-28 1961493+harryterkelsen@users.noreply.github.com [canvaskit] Deduplicate golden test file names (flutter/engine#56143)
2024-10-28 bdero@google.com [Flutter GPU] Replace HostBuffer with Dart version. (flutter/engine#56054)
2024-10-28 jonahwilliams@google.com [Impeller] add basic Impeller+Vulkan support to embedder API. (flutter/engine#55490)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC codefu@google.com,zra@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
nick9822 pushed a commit to nick9822/flutter that referenced this pull request Dec 18, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

autosubmit Merge PR when tree becomes green via auto submit App e: impeller platform-android

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants