@@ -26,6 +26,7 @@ use interpreted_executor::util::wrap_network_in_scope;
2626use spin:: Mutex ;
2727use std:: sync:: Arc ;
2828use std:: sync:: mpsc:: { Receiver , Sender } ;
29+ use vello:: wgpu:: TexelCopyTextureInfoBase ;
2930
3031/// Persistent data between graph executions. It's updated via message passing from the editor thread with [`GraphRuntimeRequest`]`.
3132/// Some of these fields are put into a [`WasmEditorApi`] which is passed to the final compiled graph network upon each execution.
@@ -358,12 +359,20 @@ impl NodeRuntime {
358359 let surface_texture = surface_inner. get_current_texture ( ) . expect ( "Failed to get surface texture" ) ;
359360 self . current_viewport_texture = Some ( image_texture. clone ( ) ) ;
360361
361- // Blit the rendered texture to the surface
362- surface. surface . blitter . copy (
363- & executor. context . device ,
364- & mut encoder,
365- & image_texture. texture . create_view ( & vello:: wgpu:: TextureViewDescriptor :: default ( ) ) ,
366- & surface_texture. texture . create_view ( & vello:: wgpu:: TextureViewDescriptor :: default ( ) ) ,
362+ encoder. copy_texture_to_texture (
363+ TexelCopyTextureInfoBase {
364+ texture : image_texture. texture . as_ref ( ) ,
365+ mip_level : 0 ,
366+ origin : Default :: default ( ) ,
367+ aspect : Default :: default ( ) ,
368+ } ,
369+ TexelCopyTextureInfoBase {
370+ texture : & surface_texture. texture ,
371+ mip_level : 0 ,
372+ origin : Default :: default ( ) ,
373+ aspect : Default :: default ( ) ,
374+ } ,
375+ image_texture. texture . size ( ) ,
367376 ) ;
368377
369378 executor. context . queue . submit ( [ encoder. finish ( ) ] ) ;
0 commit comments