Skip to content

Add finish and recall methods to iced_wgpu::Renderer#2693

Merged
hecrj merged 1 commit into
iced-rs:masterfrom
Azorlogh:more-flexible-wgpu-engine
Mar 25, 2026
Merged

Add finish and recall methods to iced_wgpu::Renderer#2693
hecrj merged 1 commit into
iced-rs:masterfrom
Azorlogh:more-flexible-wgpu-engine

Conversation

@Azorlogh

@Azorlogh Azorlogh commented Dec 8, 2024

Copy link
Copy Markdown
Contributor

The iced integration for bevy needs to let Bevy take care of submitting the queue, so it can't call Renderer::present. But it still needs to call finish/recall on the staging belt.
This adds two methods Renderer::staging_belt_finish and Renderer::staging_belt_recall to let the user do it manually.

@srussvoll

Copy link
Copy Markdown

Bevy 0.15 support has been completed in tasgon/bevy_iced#34, and is blocked by this PR. What is the status of this PR? Are there any changes needed to get this through?

@Azorlogh

Azorlogh commented Apr 8, 2025

Copy link
Copy Markdown
Contributor Author

I updated the PR. Since recent changes the only thing left is the ability to manually finish & recall the staging belt.

@Azorlogh Azorlogh changed the title Allow the user of iced_wgpu::Engine to submit the queue themself Let the user of iced_wgpu::Renderer manually finish/recall the staging belt Apr 8, 2025
@Azorlogh

Azorlogh commented Apr 8, 2025

Copy link
Copy Markdown
Contributor Author

Actually there is a second change needed 😅 We need to be able to call Renderer::draw too. I made it public

@hecrj

hecrj commented Nov 18, 2025

Copy link
Copy Markdown
Member

Why does present not work exactly? Why does Bevy need to control all Queue submissions?

@Azorlogh

Copy link
Copy Markdown
Contributor Author

@hecrj In order to integrate to bevy's render graph, we need to append our commands to the Queue it provides us. It only submit the queue after the whole graph finished running.
If iced submits the work to its own queue, then everything else will be drawn on top of its UI

@hecrj
hecrj force-pushed the more-flexible-wgpu-engine branch from 35c02ba to 0573b2f Compare March 25, 2026 03:25
@hecrj hecrj changed the title Let the user of iced_wgpu::Renderer manually finish/recall the staging belt Add finish and recall methods to iced_wgpu::Renderer Mar 25, 2026
@hecrj hecrj changed the title Add finish and recall methods to iced_wgpu::Renderer Add finish and recall methods to iced_wgpu::Renderer Mar 25, 2026
@hecrj hecrj added this to the 0.15 milestone Mar 25, 2026
@hecrj
hecrj force-pushed the more-flexible-wgpu-engine branch 2 times, most recently from c305a70 to f7be2b1 Compare March 25, 2026 03:28

@hecrj hecrj left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Let's go with this for now.

Sorry for the wait! Better late than never.

@hecrj
hecrj force-pushed the more-flexible-wgpu-engine branch from f7be2b1 to fba376b Compare March 25, 2026 03:29
@hecrj
hecrj force-pushed the more-flexible-wgpu-engine branch from fba376b to ddfbf43 Compare March 25, 2026 03:30
@hecrj
hecrj enabled auto-merge March 25, 2026 03:30
@hecrj
hecrj merged commit 3f8f9d6 into iced-rs:master Mar 25, 2026
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants