Skip to content

Expose Hybrid Image Manager#44

Merged
nicoburns merged 2 commits intoDioxusLabs:mainfrom
taj-p:tajp/exposeImageManager
Feb 9, 2026
Merged

Expose Hybrid Image Manager#44
nicoburns merged 2 commits intoDioxusLabs:mainfrom
taj-p:tajp/exposeImageManager

Conversation

@taj-p
Copy link
Collaborator

@taj-p taj-p commented Feb 9, 2026

See second commit. Stacks on top of #43.

  • Exposes ImageManager from Vello Hybrid for public consumption
  • Makes ImageManager required

This is required to enable custom use of Vello Hybrid, for example, for benchmarking per the below:

            // Prepare GPU resources
            let mut encoder = gpu
                .device
                .create_command_encoder(&wgpu::CommandEncoderDescriptor::default());
            let texture_view = gpu
                .texture
                .create_view(&wgpu::TextureViewDescriptor::default());

            // Build the scene
            {
                let image_manager = ImageManager::new(
                    &mut renderer,
                    &gpu.device,
                    &gpu.queue,
                    &mut encoder,
                    &mut cached_images,
                );
                let mut painter = VelloHybridScenePainter::new(&mut hybrid_scene, image_manager);
                painter.append_scene(item.scene.clone(), Affine::IDENTITY);
            }

            renderer
                .render(
                    &hybrid_scene,
                    &gpu.device,
                    &gpu.queue,
                    &mut encoder,
                    &render_size,
                    &texture_view,
                )
                .expect("Hybrid render failed");

@taj-p taj-p changed the title Tajp/expose image manager Expose Hybrid Image Manager Feb 9, 2026
@taj-p taj-p requested a review from nicoburns February 9, 2026 18:13
@nicoburns nicoburns merged commit ceda4e6 into DioxusLabs:main Feb 9, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants