@@ -118,9 +118,9 @@ struct SizedBuffer {
118
118
size : usize ,
119
119
}
120
120
121
- /// Render pass to render a egui based GUI.
122
- pub struct RenderPass {
123
- render_pipeline : wgpu:: RenderPipeline ,
121
+ /// Renderer for a egui based GUI.
122
+ pub struct Renderer {
123
+ pipeline : wgpu:: RenderPipeline ,
124
124
depth_texture : Option < ( wgpu:: Texture , wgpu:: TextureView ) > ,
125
125
index_buffers : Vec < SizedBuffer > ,
126
126
vertex_buffers : Vec < SizedBuffer > ,
@@ -137,8 +137,8 @@ pub struct RenderPass {
137
137
pub paint_callback_resources : TypeMap ,
138
138
}
139
139
140
- impl RenderPass {
141
- /// Creates a new render pass to render a egui UI.
140
+ impl Renderer {
141
+ /// Creates a renderer for a egui UI.
142
142
///
143
143
/// If the format passed is not a *Srgb format, the shader will automatically convert to `sRGB` colors in the shader.
144
144
pub fn new (
@@ -231,7 +231,7 @@ impl RenderPass {
231
231
bias : wgpu:: DepthBiasState :: default ( ) ,
232
232
} ) ;
233
233
234
- let render_pipeline = device. create_render_pipeline ( & wgpu:: RenderPipelineDescriptor {
234
+ let pipeline = device. create_render_pipeline ( & wgpu:: RenderPipelineDescriptor {
235
235
label : Some ( "egui_pipeline" ) ,
236
236
layout : Some ( & pipeline_layout) ,
237
237
vertex : wgpu:: VertexState {
@@ -290,7 +290,7 @@ impl RenderPass {
290
290
} ) ;
291
291
292
292
Self {
293
- render_pipeline ,
293
+ pipeline ,
294
294
vertex_buffers : Vec :: with_capacity ( 64 ) ,
295
295
index_buffers : Vec :: with_capacity ( 64 ) ,
296
296
uniform_buffer,
@@ -323,8 +323,8 @@ impl RenderPass {
323
323
self . depth_texture = Some ( ( texture, view) ) ;
324
324
}
325
325
326
- /// Executes the egui render pass.
327
- pub fn execute (
326
+ /// Executes the renderer on it's own render pass.
327
+ pub fn render (
328
328
& self ,
329
329
encoder : & mut wgpu:: CommandEncoder ,
330
330
color_attachment : & wgpu:: TextureView ,
@@ -349,7 +349,7 @@ impl RenderPass {
349
349
}
350
350
} ) ;
351
351
352
- let mut rpass = encoder. begin_render_pass ( & wgpu:: RenderPassDescriptor {
352
+ let mut render_pass = encoder. begin_render_pass ( & wgpu:: RenderPassDescriptor {
353
353
color_attachments : & [ Some ( wgpu:: RenderPassColorAttachment {
354
354
view : color_attachment,
355
355
resolve_target : None ,
@@ -359,26 +359,23 @@ impl RenderPass {
359
359
} ,
360
360
} ) ] ,
361
361
depth_stencil_attachment,
362
- label : Some ( "egui main render pass " ) ,
362
+ label : Some ( "egui_render_pass " ) ,
363
363
} ) ;
364
- rpass. push_debug_group ( "egui_pass" ) ;
365
364
366
- self . execute_with_renderpass ( & mut rpass, paint_jobs, screen_descriptor) ;
367
-
368
- rpass. pop_debug_group ( ) ;
365
+ self . render_onto_renderpass ( & mut render_pass, paint_jobs, screen_descriptor) ;
369
366
}
370
367
371
- /// Executes the egui render pass onto an existing wgpu renderpass.
372
- pub fn execute_with_renderpass < ' rpass > (
373
- & ' rpass self ,
374
- rpass : & mut wgpu:: RenderPass < ' rpass > ,
368
+ /// Executes the egui renderer onto an existing wgpu renderpass.
369
+ pub fn render_onto_renderpass < ' rp > (
370
+ & ' rp self ,
371
+ render_pass : & mut wgpu:: RenderPass < ' rp > ,
375
372
paint_jobs : & [ egui:: epaint:: ClippedPrimitive ] ,
376
373
screen_descriptor : & ScreenDescriptor ,
377
374
) {
378
375
let pixels_per_point = screen_descriptor. pixels_per_point ;
379
376
let size_in_pixels = screen_descriptor. size_in_pixels ;
380
377
381
- // Whether or not we need to reset the renderpass state because a paint callback has just
378
+ // Whether or not we need to reset the render pass because a paint callback has just
382
379
// run.
383
380
let mut needs_reset = true ;
384
381
@@ -391,16 +388,16 @@ impl RenderPass {
391
388
} in paint_jobs
392
389
{
393
390
if needs_reset {
394
- rpass . set_viewport (
391
+ render_pass . set_viewport (
395
392
0.0 ,
396
393
0.0 ,
397
394
size_in_pixels[ 0 ] as f32 ,
398
395
size_in_pixels[ 1 ] as f32 ,
399
396
0.0 ,
400
397
1.0 ,
401
398
) ;
402
- rpass . set_pipeline ( & self . render_pipeline ) ;
403
- rpass . set_bind_group ( 0 , & self . uniform_bind_group , & [ ] ) ;
399
+ render_pass . set_pipeline ( & self . pipeline ) ;
400
+ render_pass . set_bind_group ( 0 , & self . uniform_bind_group , & [ ] ) ;
404
401
needs_reset = false ;
405
402
}
406
403
@@ -417,7 +414,7 @@ impl RenderPass {
417
414
continue ;
418
415
}
419
416
420
- rpass . set_scissor_rect ( rect. x , rect. y , rect. width , rect. height ) ;
417
+ render_pass . set_scissor_rect ( rect. x , rect. y , rect. width , rect. height ) ;
421
418
}
422
419
423
420
match primitive {
@@ -426,13 +423,13 @@ impl RenderPass {
426
423
let vertex_buffer = vertex_buffers. next ( ) . unwrap ( ) ;
427
424
428
425
if let Some ( ( _texture, bind_group) ) = self . textures . get ( & mesh. texture_id ) {
429
- rpass . set_bind_group ( 1 , bind_group, & [ ] ) ;
430
- rpass . set_index_buffer (
426
+ render_pass . set_bind_group ( 1 , bind_group, & [ ] ) ;
427
+ render_pass . set_index_buffer (
431
428
index_buffer. buffer . slice ( ..) ,
432
429
wgpu:: IndexFormat :: Uint32 ,
433
430
) ;
434
- rpass . set_vertex_buffer ( 0 , vertex_buffer. buffer . slice ( ..) ) ;
435
- rpass . draw_indexed ( 0 ..mesh. indices . len ( ) as u32 , 0 , 0 ..1 ) ;
431
+ render_pass . set_vertex_buffer ( 0 , vertex_buffer. buffer . slice ( ..) ) ;
432
+ render_pass . draw_indexed ( 0 ..mesh. indices . len ( ) as u32 , 0 , 0 ..1 ) ;
436
433
} else {
437
434
tracing:: warn!( "Missing texture: {:?}" , mesh. texture_id) ;
438
435
}
@@ -461,7 +458,7 @@ impl RenderPass {
461
458
let rect_max_x = rect_max_x. round ( ) ;
462
459
let rect_max_y = rect_max_y. round ( ) ;
463
460
464
- rpass . set_viewport (
461
+ render_pass . set_viewport (
465
462
rect_min_x,
466
463
rect_min_y,
467
464
rect_max_x - rect_min_x,
@@ -478,18 +475,18 @@ impl RenderPass {
478
475
pixels_per_point,
479
476
screen_size_px : size_in_pixels,
480
477
} ,
481
- rpass ,
478
+ render_pass ,
482
479
& self . paint_callback_resources ,
483
480
) ;
484
481
}
485
482
}
486
483
}
487
484
}
488
485
489
- rpass . set_scissor_rect ( 0 , 0 , size_in_pixels[ 0 ] , size_in_pixels[ 1 ] ) ;
486
+ render_pass . set_scissor_rect ( 0 , 0 , size_in_pixels[ 0 ] , size_in_pixels[ 1 ] ) ;
490
487
}
491
488
492
- /// Should be called before `execute ()`.
489
+ /// Should be called before `render ()`.
493
490
pub fn update_texture (
494
491
& mut self ,
495
492
device : & wgpu:: Device ,
@@ -768,8 +765,8 @@ impl RenderPass {
768
765
* user_texture_binding = bind_group;
769
766
}
770
767
771
- /// Uploads the uniform, vertex and index data used by the render pass .
772
- /// Should be called before `execute ()`.
768
+ /// Uploads the uniform, vertex and index data used by the renderer .
769
+ /// Should be called before `render ()`.
773
770
pub fn update_buffers (
774
771
& mut self ,
775
772
device : & wgpu:: Device ,
@@ -922,7 +919,7 @@ impl ScissorRect {
922
919
}
923
920
924
921
#[ test]
925
- fn render_pass_impl_send_sync ( ) {
922
+ fn renderer_impl_send_sync ( ) {
926
923
fn assert_send_sync < T : Send + Sync > ( ) { }
927
- assert_send_sync :: < RenderPass > ( ) ;
924
+ assert_send_sync :: < Renderer > ( ) ;
928
925
}
0 commit comments