Skip to content

Commit e2bfa4a

Browse files
committed
change back to RenderContext and moved it to the render_graph module
renamed Wgpu* types to Gpu*
1 parent d87484f commit e2bfa4a

File tree

22 files changed

+202
-215
lines changed

22 files changed

+202
-215
lines changed

crates/bevy_core_pipeline/src/bloom/mod.rs

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ use bevy_ecs::{
99
};
1010
use bevy_math::UVec2;
1111
use bevy_reflect::{Reflect, TypeUuid};
12+
use bevy_render::render_graph::RenderContext;
1213
use bevy_render::{
1314
camera::ExtractedCamera,
1415
extract_component::{
@@ -19,7 +20,7 @@ use bevy_render::{
1920
render_graph::{Node, NodeRunError, RenderGraph, RenderGraphContext, SlotInfo, SlotType},
2021
render_phase::TrackedRenderPass,
2122
render_resource::*,
22-
renderer::{GpuContext, GpuDevice},
23+
renderer::GpuDevice,
2324
texture::{CachedTexture, TextureCache},
2425
view::ViewTarget,
2526
RenderApp, RenderStage,
@@ -200,7 +201,7 @@ impl Node for BloomNode {
200201
fn run(
201202
&self,
202203
graph: &mut RenderGraphContext,
203-
gpu_context: &mut GpuContext,
204+
render_context: &mut RenderContext,
204205
world: &World,
205206
) -> Result<(), NodeRunError> {
206207
#[cfg(feature = "trace")]
@@ -232,7 +233,7 @@ impl Node for BloomNode {
232233
{
233234
let view = &BloomTextures::texture_view(&textures.texture_a, 0);
234235
let mut prefilter_pass =
235-
TrackedRenderPass::new(gpu_context.gpu_command_encoder.begin_render_pass(
236+
TrackedRenderPass::new(render_context.gpu_command_encoder.begin_render_pass(
236237
&RenderPassDescriptor {
237238
label: Some("bloom_prefilter_pass"),
238239
color_attachments: &[Some(RenderPassColorAttachment {
@@ -258,7 +259,7 @@ impl Node for BloomNode {
258259
for mip in 1..textures.mip_count {
259260
let view = &BloomTextures::texture_view(&textures.texture_a, mip);
260261
let mut downsampling_pass =
261-
TrackedRenderPass::new(gpu_context.gpu_command_encoder.begin_render_pass(
262+
TrackedRenderPass::new(render_context.gpu_command_encoder.begin_render_pass(
262263
&RenderPassDescriptor {
263264
label: Some("bloom_downsampling_pass"),
264265
color_attachments: &[Some(RenderPassColorAttachment {
@@ -284,7 +285,7 @@ impl Node for BloomNode {
284285
for mip in (1..textures.mip_count).rev() {
285286
let view = &BloomTextures::texture_view(&textures.texture_b, mip - 1);
286287
let mut upsampling_pass =
287-
TrackedRenderPass::new(gpu_context.gpu_command_encoder.begin_render_pass(
288+
TrackedRenderPass::new(render_context.gpu_command_encoder.begin_render_pass(
288289
&RenderPassDescriptor {
289290
label: Some("bloom_upsampling_pass"),
290291
color_attachments: &[Some(RenderPassColorAttachment {
@@ -309,7 +310,7 @@ impl Node for BloomNode {
309310

310311
{
311312
let mut upsampling_final_pass =
312-
TrackedRenderPass::new(gpu_context.gpu_command_encoder.begin_render_pass(
313+
TrackedRenderPass::new(render_context.gpu_command_encoder.begin_render_pass(
313314
&RenderPassDescriptor {
314315
label: Some("bloom_upsampling_final_pass"),
315316
color_attachments: &[Some(view_target.get_unsampled_color_attachment(

crates/bevy_core_pipeline/src/core_2d/main_pass_2d_node.rs

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,11 @@ use crate::{
33
core_2d::{camera_2d::Camera2d, Transparent2d},
44
};
55
use bevy_ecs::prelude::*;
6-
use bevy_render::render_phase::TrackedRenderPass;
76
use bevy_render::{
87
camera::ExtractedCamera,
9-
render_graph::{Node, NodeRunError, RenderGraphContext, SlotInfo, SlotType},
10-
render_phase::RenderPhase,
8+
render_graph::{Node, NodeRunError, RenderContext, RenderGraphContext, SlotInfo, SlotType},
9+
render_phase::{RenderPhase, TrackedRenderPass},
1110
render_resource::{LoadOp, Operations, RenderPassDescriptor},
12-
renderer::GpuContext,
1311
view::{ExtractedView, ViewTarget},
1412
};
1513
#[cfg(feature = "trace")]
@@ -49,7 +47,7 @@ impl Node for MainPass2dNode {
4947
fn run(
5048
&self,
5149
graph: &mut RenderGraphContext,
52-
gpu_context: &mut GpuContext,
50+
render_context: &mut RenderContext,
5351
world: &World,
5452
) -> Result<(), NodeRunError> {
5553
let view_entity = graph.get_input_entity(Self::IN_VIEW)?;
@@ -78,7 +76,7 @@ impl Node for MainPass2dNode {
7876
depth_stencil_attachment: None,
7977
};
8078

81-
let render_pass = gpu_context
79+
let render_pass = render_context
8280
.gpu_command_encoder
8381
.begin_render_pass(&pass_descriptor);
8482
let mut render_pass = TrackedRenderPass::new(render_pass);
@@ -105,7 +103,7 @@ impl Node for MainPass2dNode {
105103
depth_stencil_attachment: None,
106104
};
107105

108-
gpu_context
106+
render_context
109107
.gpu_command_encoder
110108
.begin_render_pass(&pass_descriptor);
111109
}

crates/bevy_core_pipeline/src/core_3d/main_pass_3d_node.rs

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,11 @@ use crate::{
33
core_3d::{AlphaMask3d, Camera3d, Opaque3d, Transparent3d},
44
};
55
use bevy_ecs::prelude::*;
6-
use bevy_render::render_phase::TrackedRenderPass;
76
use bevy_render::{
87
camera::ExtractedCamera,
9-
render_graph::{Node, NodeRunError, RenderGraphContext, SlotInfo, SlotType},
10-
render_phase::RenderPhase,
8+
render_graph::{Node, NodeRunError, RenderContext, RenderGraphContext, SlotInfo, SlotType},
9+
render_phase::{RenderPhase, TrackedRenderPass},
1110
render_resource::{LoadOp, Operations, RenderPassDepthStencilAttachment, RenderPassDescriptor},
12-
renderer::GpuContext,
1311
view::{ExtractedView, ViewDepthTexture, ViewTarget},
1412
};
1513
#[cfg(feature = "trace")]
@@ -52,7 +50,7 @@ impl Node for MainPass3dNode {
5250
fn run(
5351
&self,
5452
graph: &mut RenderGraphContext,
55-
gpu_context: &mut GpuContext,
53+
render_context: &mut RenderContext,
5654
world: &World,
5755
) -> Result<(), NodeRunError> {
5856
let view_entity = graph.get_input_entity(Self::IN_VIEW)?;
@@ -67,7 +65,7 @@ impl Node for MainPass3dNode {
6765
// Always run opaque pass to ensure screen is cleared
6866
{
6967
// Run the opaque pass, sorted front-to-back
70-
// NOTE: Scoped to drop the mutable borrow of gpu_context
68+
// NOTE: Scoped to drop the mutable borrow of render_context
7169
#[cfg(feature = "trace")]
7270
let _main_opaque_pass_3d_span = info_span!("main_opaque_pass_3d").entered();
7371
let pass_descriptor = RenderPassDescriptor {
@@ -96,7 +94,7 @@ impl Node for MainPass3dNode {
9694
}),
9795
};
9896

99-
let render_pass = gpu_context
97+
let render_pass = render_context
10098
.gpu_command_encoder
10199
.begin_render_pass(&pass_descriptor);
102100
let mut render_pass = TrackedRenderPass::new(render_pass);
@@ -110,7 +108,7 @@ impl Node for MainPass3dNode {
110108

111109
if !alpha_mask_phase.items.is_empty() {
112110
// Run the alpha mask pass, sorted front-to-back
113-
// NOTE: Scoped to drop the mutable borrow of gpu_context
111+
// NOTE: Scoped to drop the mutable borrow of render_context
114112
#[cfg(feature = "trace")]
115113
let _main_alpha_mask_pass_3d_span = info_span!("main_alpha_mask_pass_3d").entered();
116114
let pass_descriptor = RenderPassDescriptor {
@@ -131,7 +129,7 @@ impl Node for MainPass3dNode {
131129
}),
132130
};
133131

134-
let render_pass = gpu_context
132+
let render_pass = render_context
135133
.gpu_command_encoder
136134
.begin_render_pass(&pass_descriptor);
137135
let mut render_pass = TrackedRenderPass::new(render_pass);
@@ -145,7 +143,7 @@ impl Node for MainPass3dNode {
145143

146144
if !transparent_phase.items.is_empty() {
147145
// Run the transparent pass, sorted back-to-front
148-
// NOTE: Scoped to drop the mutable borrow of gpu_context
146+
// NOTE: Scoped to drop the mutable borrow of render_context
149147
#[cfg(feature = "trace")]
150148
let _main_transparent_pass_3d_span = info_span!("main_transparent_pass_3d").entered();
151149
let pass_descriptor = RenderPassDescriptor {
@@ -171,7 +169,7 @@ impl Node for MainPass3dNode {
171169
}),
172170
};
173171

174-
let render_pass = gpu_context
172+
let render_pass = render_context
175173
.gpu_command_encoder
176174
.begin_render_pass(&pass_descriptor);
177175
let mut render_pass = TrackedRenderPass::new(render_pass);
@@ -198,7 +196,7 @@ impl Node for MainPass3dNode {
198196
depth_stencil_attachment: None,
199197
};
200198

201-
gpu_context
199+
render_context
202200
.gpu_command_encoder
203201
.begin_render_pass(&pass_descriptor);
204202
}

crates/bevy_core_pipeline/src/fxaa/node.rs

Lines changed: 27 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,12 @@ use crate::fxaa::{CameraFxaaPipeline, Fxaa, FxaaPipeline};
44
use bevy_ecs::prelude::*;
55
use bevy_ecs::query::QueryState;
66
use bevy_render::{
7-
render_graph::{Node, NodeRunError, RenderGraphContext, SlotInfo, SlotType},
7+
render_graph::{Node, NodeRunError, RenderContext, RenderGraphContext, SlotInfo, SlotType},
88
render_resource::{
99
BindGroup, BindGroupDescriptor, BindGroupEntry, BindingResource, FilterMode, Operations,
1010
PipelineCache, RenderPassColorAttachment, RenderPassDescriptor, SamplerDescriptor,
1111
TextureViewId,
1212
},
13-
renderer::GpuContext,
1413
view::{ExtractedView, ViewTarget},
1514
};
1615
use bevy_utils::default;
@@ -50,7 +49,7 @@ impl Node for FxaaNode {
5049
fn run(
5150
&self,
5251
graph: &mut RenderGraphContext,
53-
gpu_context: &mut GpuContext,
52+
render_context: &mut RenderContext,
5453
world: &World,
5554
) -> Result<(), NodeRunError> {
5655
let view_entity = graph.get_input_entity(Self::IN_VIEW)?;
@@ -77,30 +76,33 @@ impl Node for FxaaNode {
7776
let bind_group = match &mut *cached_bind_group {
7877
Some((id, bind_group)) if source.id() == *id => bind_group,
7978
cached_bind_group => {
80-
let sampler = gpu_context.gpu_device.create_sampler(&SamplerDescriptor {
81-
mipmap_filter: FilterMode::Linear,
82-
mag_filter: FilterMode::Linear,
83-
min_filter: FilterMode::Linear,
84-
..default()
85-
});
86-
87-
let bind_group = gpu_context
79+
let sampler = render_context
8880
.gpu_device
89-
.create_bind_group(&BindGroupDescriptor {
90-
label: None,
91-
layout: &fxaa_pipeline.texture_bind_group,
92-
entries: &[
93-
BindGroupEntry {
94-
binding: 0,
95-
resource: BindingResource::TextureView(source),
96-
},
97-
BindGroupEntry {
98-
binding: 1,
99-
resource: BindingResource::Sampler(&sampler),
100-
},
101-
],
81+
.create_sampler(&SamplerDescriptor {
82+
mipmap_filter: FilterMode::Linear,
83+
mag_filter: FilterMode::Linear,
84+
min_filter: FilterMode::Linear,
85+
..default()
10286
});
10387

88+
let bind_group =
89+
render_context
90+
.gpu_device
91+
.create_bind_group(&BindGroupDescriptor {
92+
label: None,
93+
layout: &fxaa_pipeline.texture_bind_group,
94+
entries: &[
95+
BindGroupEntry {
96+
binding: 0,
97+
resource: BindingResource::TextureView(source),
98+
},
99+
BindGroupEntry {
100+
binding: 1,
101+
resource: BindingResource::Sampler(&sampler),
102+
},
103+
],
104+
});
105+
104106
let (_, bind_group) = cached_bind_group.insert((source.id(), bind_group));
105107
bind_group
106108
}
@@ -116,7 +118,7 @@ impl Node for FxaaNode {
116118
depth_stencil_attachment: None,
117119
};
118120

119-
let mut render_pass = gpu_context
121+
let mut render_pass = render_context
120122
.gpu_command_encoder
121123
.begin_render_pass(&pass_descriptor);
122124

crates/bevy_core_pipeline/src/tonemapping/node.rs

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,12 @@ use crate::tonemapping::{TonemappingPipeline, ViewTonemappingPipeline};
44
use bevy_ecs::prelude::*;
55
use bevy_ecs::query::QueryState;
66
use bevy_render::{
7-
render_graph::{Node, NodeRunError, RenderGraphContext, SlotInfo, SlotType},
7+
render_graph::{Node, NodeRunError, RenderContext, RenderGraphContext, SlotInfo, SlotType},
88
render_resource::{
99
BindGroup, BindGroupDescriptor, BindGroupEntry, BindingResource, LoadOp, Operations,
1010
PipelineCache, RenderPassColorAttachment, RenderPassDescriptor, SamplerDescriptor,
1111
TextureViewId,
1212
},
13-
renderer::GpuContext,
1413
view::{ExtractedView, ViewTarget},
1514
};
1615

@@ -42,7 +41,7 @@ impl Node for TonemappingNode {
4241
fn run(
4342
&self,
4443
graph: &mut RenderGraphContext,
45-
gpu_context: &mut GpuContext,
44+
render_context: &mut RenderContext,
4645
world: &World,
4746
) -> Result<(), NodeRunError> {
4847
let view_entity = graph.get_input_entity(Self::IN_VIEW)?;
@@ -71,26 +70,27 @@ impl Node for TonemappingNode {
7170
let bind_group = match &mut *cached_bind_group {
7271
Some((id, bind_group)) if source.id() == *id => bind_group,
7372
cached_bind_group => {
74-
let sampler = gpu_context
73+
let sampler = render_context
7574
.gpu_device
7675
.create_sampler(&SamplerDescriptor::default());
7776

78-
let bind_group = gpu_context
79-
.gpu_device
80-
.create_bind_group(&BindGroupDescriptor {
81-
label: None,
82-
layout: &tonemapping_pipeline.texture_bind_group,
83-
entries: &[
84-
BindGroupEntry {
85-
binding: 0,
86-
resource: BindingResource::TextureView(source),
87-
},
88-
BindGroupEntry {
89-
binding: 1,
90-
resource: BindingResource::Sampler(&sampler),
91-
},
92-
],
93-
});
77+
let bind_group =
78+
render_context
79+
.gpu_device
80+
.create_bind_group(&BindGroupDescriptor {
81+
label: None,
82+
layout: &tonemapping_pipeline.texture_bind_group,
83+
entries: &[
84+
BindGroupEntry {
85+
binding: 0,
86+
resource: BindingResource::TextureView(source),
87+
},
88+
BindGroupEntry {
89+
binding: 1,
90+
resource: BindingResource::Sampler(&sampler),
91+
},
92+
],
93+
});
9494

9595
let (_, bind_group) = cached_bind_group.insert((source.id(), bind_group));
9696
bind_group
@@ -110,7 +110,7 @@ impl Node for TonemappingNode {
110110
depth_stencil_attachment: None,
111111
};
112112

113-
let mut render_pass = gpu_context
113+
let mut render_pass = render_context
114114
.gpu_command_encoder
115115
.begin_render_pass(&pass_descriptor);
116116

0 commit comments

Comments
 (0)