diff --git a/crates/bevy_core_pipeline/src/bloom/mod.rs b/crates/bevy_core_pipeline/src/bloom/mod.rs index 0700c3b16b3ae..e68278162dba5 100644 --- a/crates/bevy_core_pipeline/src/bloom/mod.rs +++ b/crates/bevy_core_pipeline/src/bloom/mod.rs @@ -9,6 +9,7 @@ use bevy_ecs::{ }; use bevy_math::UVec2; use bevy_reflect::{Reflect, TypeUuid}; +use bevy_render::render_graph::RenderContext; use bevy_render::{ camera::ExtractedCamera, extract_component::{ @@ -19,7 +20,7 @@ use bevy_render::{ render_graph::{Node, NodeRunError, RenderGraph, RenderGraphContext, SlotInfo, SlotType}, render_phase::TrackedRenderPass, render_resource::*, - renderer::{RenderContext, RenderDevice}, + renderer::GpuDevice, texture::{CachedTexture, TextureCache}, view::ViewTarget, RenderApp, RenderStage, @@ -232,7 +233,7 @@ impl Node for BloomNode { { let view = &BloomTextures::texture_view(&textures.texture_a, 0); let mut prefilter_pass = - TrackedRenderPass::new(render_context.command_encoder.begin_render_pass( + TrackedRenderPass::new(render_context.gpu_command_encoder.begin_render_pass( &RenderPassDescriptor { label: Some("bloom_prefilter_pass"), color_attachments: &[Some(RenderPassColorAttachment { @@ -258,7 +259,7 @@ impl Node for BloomNode { for mip in 1..textures.mip_count { let view = &BloomTextures::texture_view(&textures.texture_a, mip); let mut downsampling_pass = - TrackedRenderPass::new(render_context.command_encoder.begin_render_pass( + TrackedRenderPass::new(render_context.gpu_command_encoder.begin_render_pass( &RenderPassDescriptor { label: Some("bloom_downsampling_pass"), color_attachments: &[Some(RenderPassColorAttachment { @@ -284,7 +285,7 @@ impl Node for BloomNode { for mip in (1..textures.mip_count).rev() { let view = &BloomTextures::texture_view(&textures.texture_b, mip - 1); let mut upsampling_pass = - TrackedRenderPass::new(render_context.command_encoder.begin_render_pass( + TrackedRenderPass::new(render_context.gpu_command_encoder.begin_render_pass( &RenderPassDescriptor { label: Some("bloom_upsampling_pass"), color_attachments: &[Some(RenderPassColorAttachment { @@ -309,7 +310,7 @@ impl Node for BloomNode { { let mut upsampling_final_pass = - TrackedRenderPass::new(render_context.command_encoder.begin_render_pass( + TrackedRenderPass::new(render_context.gpu_command_encoder.begin_render_pass( &RenderPassDescriptor { label: Some("bloom_upsampling_final_pass"), color_attachments: &[Some(view_target.get_unsampled_color_attachment( @@ -350,9 +351,9 @@ struct BloomPipelines { impl FromWorld for BloomPipelines { fn from_world(world: &mut World) -> Self { - let render_device = world.resource::(); + let gpu_device = world.resource::(); - let sampler = render_device.create_sampler(&SamplerDescriptor { + let sampler = gpu_device.create_sampler(&SamplerDescriptor { min_filter: FilterMode::Linear, mag_filter: FilterMode::Linear, address_mode_u: AddressMode::ClampToEdge, @@ -361,7 +362,7 @@ impl FromWorld for BloomPipelines { }); let downsampling_bind_group_layout = - render_device.create_bind_group_layout(&BindGroupLayoutDescriptor { + gpu_device.create_bind_group_layout(&BindGroupLayoutDescriptor { label: Some("bloom_downsampling_bind_group_layout"), entries: &[ // Upsampled input texture (downsampled for final upsample) @@ -397,7 +398,7 @@ impl FromWorld for BloomPipelines { }); let upsampling_bind_group_layout = - render_device.create_bind_group_layout(&BindGroupLayoutDescriptor { + gpu_device.create_bind_group_layout(&BindGroupLayoutDescriptor { label: Some("bloom_upsampling_bind_group_layout"), entries: &[ // Downsampled input texture @@ -563,7 +564,7 @@ impl BloomTextures { fn prepare_bloom_textures( mut commands: Commands, mut texture_cache: ResMut, - render_device: Res, + gpu_device: Res, views: Query<(Entity, &ExtractedCamera), With>, ) { let mut texture_as = HashMap::default(); @@ -594,13 +595,13 @@ fn prepare_bloom_textures( texture_descriptor.label = Some("bloom_texture_a"); let texture_a = texture_as .entry(camera.target.clone()) - .or_insert_with(|| texture_cache.get(&render_device, texture_descriptor.clone())) + .or_insert_with(|| texture_cache.get(&gpu_device, texture_descriptor.clone())) .clone(); texture_descriptor.label = Some("bloom_texture_b"); let texture_b = texture_bs .entry(camera.target.clone()) - .or_insert_with(|| texture_cache.get(&render_device, texture_descriptor)) + .or_insert_with(|| texture_cache.get(&gpu_device, texture_descriptor)) .clone(); commands.entity(entity).insert(BloomTextures { @@ -633,14 +634,14 @@ struct BloomBindGroups { fn queue_bloom_bind_groups( mut commands: Commands, - render_device: Res, + gpu_device: Res, pipelines: Res, uniforms: Res>, views: Query<(Entity, &ViewTarget, &BloomTextures)>, ) { if let Some(uniforms) = uniforms.binding() { for (entity, view_target, textures) in &views { - let prefilter_bind_group = render_device.create_bind_group(&BindGroupDescriptor { + let prefilter_bind_group = gpu_device.create_bind_group(&BindGroupDescriptor { label: Some("bloom_prefilter_bind_group"), layout: &pipelines.downsampling_bind_group_layout, entries: &[ @@ -663,7 +664,7 @@ fn queue_bloom_bind_groups( let mut downsampling_bind_groups = Vec::with_capacity(bind_group_count); for mip in 1..textures.mip_count { - let bind_group = render_device.create_bind_group(&BindGroupDescriptor { + let bind_group = gpu_device.create_bind_group(&BindGroupDescriptor { label: Some("bloom_downsampling_bind_group"), layout: &pipelines.downsampling_bind_group_layout, entries: &[ @@ -700,7 +701,7 @@ fn queue_bloom_bind_groups( mip, ); - let bind_group = render_device.create_bind_group(&BindGroupDescriptor { + let bind_group = gpu_device.create_bind_group(&BindGroupDescriptor { label: Some("bloom_upsampling_bind_group"), layout: &pipelines.upsampling_bind_group_layout, entries: &[ @@ -726,28 +727,27 @@ fn queue_bloom_bind_groups( upsampling_bind_groups.push(bind_group); } - let upsampling_final_bind_group = - render_device.create_bind_group(&BindGroupDescriptor { - label: Some("bloom_upsampling_final_bind_group"), - layout: &pipelines.downsampling_bind_group_layout, - entries: &[ - BindGroupEntry { - binding: 0, - resource: BindingResource::TextureView(&BloomTextures::texture_view( - &textures.texture_b, - 0, - )), - }, - BindGroupEntry { - binding: 1, - resource: BindingResource::Sampler(&pipelines.sampler), - }, - BindGroupEntry { - binding: 2, - resource: uniforms.clone(), - }, - ], - }); + let upsampling_final_bind_group = gpu_device.create_bind_group(&BindGroupDescriptor { + label: Some("bloom_upsampling_final_bind_group"), + layout: &pipelines.downsampling_bind_group_layout, + entries: &[ + BindGroupEntry { + binding: 0, + resource: BindingResource::TextureView(&BloomTextures::texture_view( + &textures.texture_b, + 0, + )), + }, + BindGroupEntry { + binding: 1, + resource: BindingResource::Sampler(&pipelines.sampler), + }, + BindGroupEntry { + binding: 2, + resource: uniforms.clone(), + }, + ], + }); commands.entity(entity).insert(BloomBindGroups { prefilter_bind_group, diff --git a/crates/bevy_core_pipeline/src/core_2d/main_pass_2d_node.rs b/crates/bevy_core_pipeline/src/core_2d/main_pass_2d_node.rs index 2a262b426195b..52436f1cd4345 100644 --- a/crates/bevy_core_pipeline/src/core_2d/main_pass_2d_node.rs +++ b/crates/bevy_core_pipeline/src/core_2d/main_pass_2d_node.rs @@ -3,13 +3,11 @@ use crate::{ core_2d::{camera_2d::Camera2d, Transparent2d}, }; use bevy_ecs::prelude::*; -use bevy_render::render_phase::TrackedRenderPass; use bevy_render::{ camera::ExtractedCamera, - render_graph::{Node, NodeRunError, RenderGraphContext, SlotInfo, SlotType}, - render_phase::RenderPhase, + render_graph::{Node, NodeRunError, RenderContext, RenderGraphContext, SlotInfo, SlotType}, + render_phase::{RenderPhase, TrackedRenderPass}, render_resource::{LoadOp, Operations, RenderPassDescriptor}, - renderer::RenderContext, view::{ExtractedView, ViewTarget}, }; #[cfg(feature = "trace")] @@ -79,7 +77,7 @@ impl Node for MainPass2dNode { }; let render_pass = render_context - .command_encoder + .gpu_command_encoder .begin_render_pass(&pass_descriptor); let mut render_pass = TrackedRenderPass::new(render_pass); @@ -106,7 +104,7 @@ impl Node for MainPass2dNode { }; render_context - .command_encoder + .gpu_command_encoder .begin_render_pass(&pass_descriptor); } diff --git a/crates/bevy_core_pipeline/src/core_3d/main_pass_3d_node.rs b/crates/bevy_core_pipeline/src/core_3d/main_pass_3d_node.rs index 1067643e03b12..f43e5b3398eda 100644 --- a/crates/bevy_core_pipeline/src/core_3d/main_pass_3d_node.rs +++ b/crates/bevy_core_pipeline/src/core_3d/main_pass_3d_node.rs @@ -3,13 +3,11 @@ use crate::{ core_3d::{AlphaMask3d, Camera3d, Opaque3d, Transparent3d}, }; use bevy_ecs::prelude::*; -use bevy_render::render_phase::TrackedRenderPass; use bevy_render::{ camera::ExtractedCamera, - render_graph::{Node, NodeRunError, RenderGraphContext, SlotInfo, SlotType}, - render_phase::RenderPhase, + render_graph::{Node, NodeRunError, RenderContext, RenderGraphContext, SlotInfo, SlotType}, + render_phase::{RenderPhase, TrackedRenderPass}, render_resource::{LoadOp, Operations, RenderPassDepthStencilAttachment, RenderPassDescriptor}, - renderer::RenderContext, view::{ExtractedView, ViewDepthTexture, ViewTarget}, }; #[cfg(feature = "trace")] @@ -97,7 +95,7 @@ impl Node for MainPass3dNode { }; let render_pass = render_context - .command_encoder + .gpu_command_encoder .begin_render_pass(&pass_descriptor); let mut render_pass = TrackedRenderPass::new(render_pass); @@ -132,7 +130,7 @@ impl Node for MainPass3dNode { }; let render_pass = render_context - .command_encoder + .gpu_command_encoder .begin_render_pass(&pass_descriptor); let mut render_pass = TrackedRenderPass::new(render_pass); @@ -172,7 +170,7 @@ impl Node for MainPass3dNode { }; let render_pass = render_context - .command_encoder + .gpu_command_encoder .begin_render_pass(&pass_descriptor); let mut render_pass = TrackedRenderPass::new(render_pass); @@ -199,7 +197,7 @@ impl Node for MainPass3dNode { }; render_context - .command_encoder + .gpu_command_encoder .begin_render_pass(&pass_descriptor); } diff --git a/crates/bevy_core_pipeline/src/core_3d/mod.rs b/crates/bevy_core_pipeline/src/core_3d/mod.rs index 34a430a345398..8855f8b1ebda7 100644 --- a/crates/bevy_core_pipeline/src/core_3d/mod.rs +++ b/crates/bevy_core_pipeline/src/core_3d/mod.rs @@ -36,7 +36,7 @@ use bevy_render::{ CachedRenderPipelineId, Extent3d, TextureDescriptor, TextureDimension, TextureFormat, TextureUsages, }, - renderer::RenderDevice, + renderer::GpuDevice, texture::TextureCache, view::ViewDepthTexture, Extract, RenderApp, RenderStage, @@ -251,7 +251,7 @@ pub fn prepare_core_3d_depth_textures( mut commands: Commands, mut texture_cache: ResMut, msaa: Res, - render_device: Res, + gpu_device: Res, views_3d: Query< (Entity, &ExtractedCamera), ( @@ -268,7 +268,7 @@ pub fn prepare_core_3d_depth_textures( .entry(camera.target.clone()) .or_insert_with(|| { texture_cache.get( - &render_device, + &gpu_device, TextureDescriptor { label: Some("view_depth_texture"), size: Extent3d { diff --git a/crates/bevy_core_pipeline/src/fxaa/mod.rs b/crates/bevy_core_pipeline/src/fxaa/mod.rs index f49425e7250c4..aac59b305b9d2 100644 --- a/crates/bevy_core_pipeline/src/fxaa/mod.rs +++ b/crates/bevy_core_pipeline/src/fxaa/mod.rs @@ -9,7 +9,7 @@ use bevy_render::{ prelude::Camera, render_graph::RenderGraph, render_resource::*, - renderer::RenderDevice, + renderer::GpuDevice, texture::BevyDefault, view::{ExtractedView, ViewTarget}, RenderApp, RenderStage, @@ -153,7 +153,7 @@ pub struct FxaaPipeline { impl FromWorld for FxaaPipeline { fn from_world(render_world: &mut World) -> Self { let texture_bind_group = render_world - .resource::() + .resource::() .create_bind_group_layout(&BindGroupLayoutDescriptor { label: Some("fxaa_texture_bind_group_layout"), entries: &[ diff --git a/crates/bevy_core_pipeline/src/fxaa/node.rs b/crates/bevy_core_pipeline/src/fxaa/node.rs index 6e12151c2fe63..3140d58371942 100644 --- a/crates/bevy_core_pipeline/src/fxaa/node.rs +++ b/crates/bevy_core_pipeline/src/fxaa/node.rs @@ -4,13 +4,12 @@ use crate::fxaa::{CameraFxaaPipeline, Fxaa, FxaaPipeline}; use bevy_ecs::prelude::*; use bevy_ecs::query::QueryState; use bevy_render::{ - render_graph::{Node, NodeRunError, RenderGraphContext, SlotInfo, SlotType}, + render_graph::{Node, NodeRunError, RenderContext, RenderGraphContext, SlotInfo, SlotType}, render_resource::{ BindGroup, BindGroupDescriptor, BindGroupEntry, BindingResource, FilterMode, Operations, PipelineCache, RenderPassColorAttachment, RenderPassDescriptor, SamplerDescriptor, TextureViewId, }, - renderer::RenderContext, view::{ExtractedView, ViewTarget}, }; use bevy_utils::default; @@ -78,7 +77,7 @@ impl Node for FxaaNode { Some((id, bind_group)) if source.id() == *id => bind_group, cached_bind_group => { let sampler = render_context - .render_device + .gpu_device .create_sampler(&SamplerDescriptor { mipmap_filter: FilterMode::Linear, mag_filter: FilterMode::Linear, @@ -88,7 +87,7 @@ impl Node for FxaaNode { let bind_group = render_context - .render_device + .gpu_device .create_bind_group(&BindGroupDescriptor { label: None, layout: &fxaa_pipeline.texture_bind_group, @@ -120,7 +119,7 @@ impl Node for FxaaNode { }; let mut render_pass = render_context - .command_encoder + .gpu_command_encoder .begin_render_pass(&pass_descriptor); render_pass.set_pipeline(pipeline); diff --git a/crates/bevy_core_pipeline/src/tonemapping/mod.rs b/crates/bevy_core_pipeline/src/tonemapping/mod.rs index 785c231a43fb9..f912743019cdb 100644 --- a/crates/bevy_core_pipeline/src/tonemapping/mod.rs +++ b/crates/bevy_core_pipeline/src/tonemapping/mod.rs @@ -6,7 +6,7 @@ use bevy_ecs::query::QueryItem; use bevy_reflect::{Reflect, TypeUuid}; use bevy_render::camera::Camera; use bevy_render::extract_component::{ExtractComponent, ExtractComponentPlugin}; -use bevy_render::renderer::RenderDevice; +use bevy_render::renderer::GpuDevice; use bevy_render::view::ViewTarget; use bevy_render::{render_resource::*, RenderApp, RenderStage}; @@ -92,7 +92,7 @@ impl SpecializedRenderPipeline for TonemappingPipeline { impl FromWorld for TonemappingPipeline { fn from_world(render_world: &mut World) -> Self { let tonemap_texture_bind_group = render_world - .resource::() + .resource::() .create_bind_group_layout(&BindGroupLayoutDescriptor { label: Some("tonemapping_hdr_texture_bind_group_layout"), entries: &[ diff --git a/crates/bevy_core_pipeline/src/tonemapping/node.rs b/crates/bevy_core_pipeline/src/tonemapping/node.rs index f9edf882c73fa..ebff3f08792f7 100644 --- a/crates/bevy_core_pipeline/src/tonemapping/node.rs +++ b/crates/bevy_core_pipeline/src/tonemapping/node.rs @@ -4,13 +4,12 @@ use crate::tonemapping::{TonemappingPipeline, ViewTonemappingPipeline}; use bevy_ecs::prelude::*; use bevy_ecs::query::QueryState; use bevy_render::{ - render_graph::{Node, NodeRunError, RenderGraphContext, SlotInfo, SlotType}, + render_graph::{Node, NodeRunError, RenderContext, RenderGraphContext, SlotInfo, SlotType}, render_resource::{ BindGroup, BindGroupDescriptor, BindGroupEntry, BindingResource, LoadOp, Operations, PipelineCache, RenderPassColorAttachment, RenderPassDescriptor, SamplerDescriptor, TextureViewId, }, - renderer::RenderContext, view::{ExtractedView, ViewTarget}, }; @@ -72,12 +71,12 @@ impl Node for TonemappingNode { Some((id, bind_group)) if source.id() == *id => bind_group, cached_bind_group => { let sampler = render_context - .render_device + .gpu_device .create_sampler(&SamplerDescriptor::default()); let bind_group = render_context - .render_device + .gpu_device .create_bind_group(&BindGroupDescriptor { label: None, layout: &tonemapping_pipeline.texture_bind_group, @@ -112,7 +111,7 @@ impl Node for TonemappingNode { }; let mut render_pass = render_context - .command_encoder + .gpu_command_encoder .begin_render_pass(&pass_descriptor); render_pass.set_pipeline(pipeline); diff --git a/crates/bevy_core_pipeline/src/upscaling/mod.rs b/crates/bevy_core_pipeline/src/upscaling/mod.rs index b8fa9718d000f..41f6ba97cb75a 100644 --- a/crates/bevy_core_pipeline/src/upscaling/mod.rs +++ b/crates/bevy_core_pipeline/src/upscaling/mod.rs @@ -3,7 +3,7 @@ use bevy_app::prelude::*; use bevy_asset::{load_internal_asset, HandleUntyped}; use bevy_ecs::prelude::*; use bevy_reflect::TypeUuid; -use bevy_render::renderer::RenderDevice; +use bevy_render::renderer::GpuDevice; use bevy_render::view::ViewTarget; use bevy_render::{render_resource::*, RenderApp, RenderStage}; @@ -41,30 +41,29 @@ pub struct UpscalingPipeline { impl FromWorld for UpscalingPipeline { fn from_world(render_world: &mut World) -> Self { - let render_device = render_world.resource::(); - - let texture_bind_group = - render_device.create_bind_group_layout(&BindGroupLayoutDescriptor { - label: Some("upscaling_texture_bind_group_layout"), - entries: &[ - BindGroupLayoutEntry { - binding: 0, - visibility: ShaderStages::FRAGMENT, - ty: BindingType::Texture { - sample_type: TextureSampleType::Float { filterable: false }, - view_dimension: TextureViewDimension::D2, - multisampled: false, - }, - count: None, + let gpu_device = render_world.resource::(); + + let texture_bind_group = gpu_device.create_bind_group_layout(&BindGroupLayoutDescriptor { + label: Some("upscaling_texture_bind_group_layout"), + entries: &[ + BindGroupLayoutEntry { + binding: 0, + visibility: ShaderStages::FRAGMENT, + ty: BindingType::Texture { + sample_type: TextureSampleType::Float { filterable: false }, + view_dimension: TextureViewDimension::D2, + multisampled: false, }, - BindGroupLayoutEntry { - binding: 1, - visibility: ShaderStages::FRAGMENT, - ty: BindingType::Sampler(SamplerBindingType::NonFiltering), - count: None, - }, - ], - }); + count: None, + }, + BindGroupLayoutEntry { + binding: 1, + visibility: ShaderStages::FRAGMENT, + ty: BindingType::Sampler(SamplerBindingType::NonFiltering), + count: None, + }, + ], + }); UpscalingPipeline { texture_bind_group } } diff --git a/crates/bevy_core_pipeline/src/upscaling/node.rs b/crates/bevy_core_pipeline/src/upscaling/node.rs index 895c3e5e1b0a2..866a72c5298c4 100644 --- a/crates/bevy_core_pipeline/src/upscaling/node.rs +++ b/crates/bevy_core_pipeline/src/upscaling/node.rs @@ -3,13 +3,12 @@ use std::sync::Mutex; use bevy_ecs::prelude::*; use bevy_ecs::query::QueryState; use bevy_render::{ - render_graph::{Node, NodeRunError, RenderGraphContext, SlotInfo, SlotType}, + render_graph::{Node, NodeRunError, RenderContext, RenderGraphContext, SlotInfo, SlotType}, render_resource::{ BindGroup, BindGroupDescriptor, BindGroupEntry, BindingResource, LoadOp, Operations, PipelineCache, RenderPassColorAttachment, RenderPassDescriptor, SamplerDescriptor, TextureViewId, }, - renderer::RenderContext, view::{ExtractedView, ViewTarget}, }; @@ -63,12 +62,12 @@ impl Node for UpscalingNode { Some((id, bind_group)) if upscaled_texture.id() == *id => bind_group, cached_bind_group => { let sampler = render_context - .render_device + .gpu_device .create_sampler(&SamplerDescriptor::default()); let bind_group = render_context - .render_device + .gpu_device .create_bind_group(&BindGroupDescriptor { label: None, layout: &upscaling_pipeline.texture_bind_group, @@ -108,7 +107,7 @@ impl Node for UpscalingNode { }; let mut render_pass = render_context - .command_encoder + .gpu_command_encoder .begin_render_pass(&pass_descriptor); render_pass.set_pipeline(pipeline); diff --git a/crates/bevy_gltf/src/loader.rs b/crates/bevy_gltf/src/loader.rs index 81d793993ac7c..6e0b4368d2ef2 100644 --- a/crates/bevy_gltf/src/loader.rs +++ b/crates/bevy_gltf/src/loader.rs @@ -25,7 +25,7 @@ use bevy_render::{ prelude::SpatialBundle, primitives::{Aabb, Frustum}, render_resource::{AddressMode, Face, FilterMode, PrimitiveTopology, SamplerDescriptor}, - renderer::RenderDevice, + renderer::GpuDevice, texture::{CompressedImageFormats, Image, ImageSampler, ImageType, TextureError}, view::VisibleEntities, }; @@ -93,8 +93,8 @@ impl AssetLoader for GltfLoader { impl FromWorld for GltfLoader { fn from_world(world: &mut World) -> Self { - let supported_compressed_formats = match world.get_resource::() { - Some(render_device) => CompressedImageFormats::from_features(render_device.features()), + let supported_compressed_formats = match world.get_resource::() { + Some(gpu_device) => CompressedImageFormats::from_features(gpu_device.features()), None => CompressedImageFormats::all(), }; diff --git a/crates/bevy_internal/src/lib.rs b/crates/bevy_internal/src/lib.rs index a1e42d64a12fe..adfaf48b0dbdb 100644 --- a/crates/bevy_internal/src/lib.rs +++ b/crates/bevy_internal/src/lib.rs @@ -136,9 +136,9 @@ pub mod pbr { #[cfg(feature = "bevy_render")] pub mod render { //! Cameras, meshes, textures, shaders, and pipelines. - //! Use [`RenderDevice::features`](crate::render::renderer::RenderDevice::features), - //! [`RenderDevice::limits`](crate::render::renderer::RenderDevice::limits), and the - //! [`RenderAdapterInfo`](crate::render::renderer::RenderAdapterInfo) resource to + //! Use [`GpuDevice::features`](crate::render::renderer::GpuDevice::features), + //! [`GpuDevice::limits`](crate::render::renderer::GpuDevice::limits), and the + //! [`GpuAdapterInfo`](crate::render::renderer::GpuAdapterInfo) resource to //! get runtime information about the actual adapter, backend, features, and limits. pub use bevy_render::*; } diff --git a/crates/bevy_pbr/src/light.rs b/crates/bevy_pbr/src/light.rs index 69188850f535b..b9d437038559d 100644 --- a/crates/bevy_pbr/src/light.rs +++ b/crates/bevy_pbr/src/light.rs @@ -9,7 +9,7 @@ use bevy_render::{ extract_resource::ExtractResource, primitives::{Aabb, CubemapFrusta, Frustum, Plane, Sphere}, render_resource::BufferBindingType, - renderer::RenderDevice, + renderer::GpuDevice, view::{ComputedVisibility, RenderLayers, VisibleEntities}, }; use bevy_transform::{components::GlobalTransform, prelude::Transform}; @@ -863,10 +863,10 @@ pub(crate) fn assign_lights_to_clusters( mut lights: Local>, mut cluster_aabb_spheres: Local>>, mut max_point_lights_warning_emitted: Local, - render_device: Option>, + gpu_device: Option>, ) { - let render_device = match render_device { - Some(render_device) => render_device, + let gpu_device = match gpu_device { + Some(gpu_device) => gpu_device, None => return, }; @@ -903,7 +903,7 @@ pub(crate) fn assign_lights_to_clusters( ); let clustered_forward_buffer_binding_type = - render_device.get_supported_read_only_binding_type(CLUSTERED_FORWARD_STORAGE_BUFFER_COUNT); + gpu_device.get_supported_read_only_binding_type(CLUSTERED_FORWARD_STORAGE_BUFFER_COUNT); let supports_storage_buffers = matches!( clustered_forward_buffer_binding_type, BufferBindingType::Storage { .. } diff --git a/crates/bevy_pbr/src/material.rs b/crates/bevy_pbr/src/material.rs index d10fac03a684e..a744e0ebe62f8 100644 --- a/crates/bevy_pbr/src/material.rs +++ b/crates/bevy_pbr/src/material.rs @@ -34,7 +34,7 @@ use bevy_render::{ PipelineCache, RenderPipelineDescriptor, Shader, ShaderRef, SpecializedMeshPipeline, SpecializedMeshPipelineError, SpecializedMeshPipelines, }, - renderer::RenderDevice, + renderer::GpuDevice, texture::FallbackImage, view::{ExtractedView, Msaa, VisibleEntities}, Extract, RenderApp, RenderStage, @@ -265,11 +265,11 @@ where impl FromWorld for MaterialPipeline { fn from_world(world: &mut World) -> Self { let asset_server = world.resource::(); - let render_device = world.resource::(); + let gpu_device = world.resource::(); MaterialPipeline { mesh_pipeline: world.resource::().clone(), - material_layout: M::bind_group_layout(render_device), + material_layout: M::bind_group_layout(gpu_device), vertex_shader: match M::vertex_shader() { ShaderRef::Default => None, ShaderRef::Handle(handle) => Some(handle), @@ -525,20 +525,14 @@ fn prepare_materials( mut prepare_next_frame: Local>, mut extracted_assets: ResMut>, mut render_materials: ResMut>, - render_device: Res, + gpu_device: Res, images: Res>, fallback_image: Res, pipeline: Res>, ) { let queued_assets = std::mem::take(&mut prepare_next_frame.assets); for (handle, material) in queued_assets.into_iter() { - match prepare_material( - &material, - &render_device, - &images, - &fallback_image, - &pipeline, - ) { + match prepare_material(&material, &gpu_device, &images, &fallback_image, &pipeline) { Ok(prepared_asset) => { render_materials.insert(handle, prepared_asset); } @@ -553,13 +547,7 @@ fn prepare_materials( } for (handle, material) in std::mem::take(&mut extracted_assets.extracted) { - match prepare_material( - &material, - &render_device, - &images, - &fallback_image, - &pipeline, - ) { + match prepare_material(&material, &gpu_device, &images, &fallback_image, &pipeline) { Ok(prepared_asset) => { render_materials.insert(handle, prepared_asset); } @@ -572,14 +560,14 @@ fn prepare_materials( fn prepare_material( material: &M, - render_device: &RenderDevice, + gpu_device: &GpuDevice, images: &RenderAssets, fallback_image: &FallbackImage, pipeline: &MaterialPipeline, ) -> Result, AsBindGroupError> { let prepared = material.as_bind_group( &pipeline.material_layout, - render_device, + gpu_device, images, fallback_image, )?; diff --git a/crates/bevy_pbr/src/render/light.rs b/crates/bevy_pbr/src/render/light.rs index 9cd2bf0bbd83c..4287c083be302 100644 --- a/crates/bevy_pbr/src/render/light.rs +++ b/crates/bevy_pbr/src/render/light.rs @@ -16,13 +16,13 @@ use bevy_render::{ color::Color, mesh::{Mesh, MeshVertexBufferLayout}, render_asset::RenderAssets, - render_graph::{Node, NodeRunError, RenderGraphContext, SlotInfo, SlotType}, + render_graph::{Node, NodeRunError, RenderContext, RenderGraphContext, SlotInfo, SlotType}, render_phase::{ CachedRenderPipelinePhaseItem, DrawFunctionId, DrawFunctions, PhaseItem, RenderCommand, RenderCommandResult, RenderPhase, SetItemPipeline, TrackedRenderPass, }, render_resource::*, - renderer::{RenderContext, RenderDevice, RenderQueue}, + renderer::{GpuDevice, GpuQueue}, texture::*, view::{ ComputedVisibility, ExtractedView, ViewUniform, ViewUniformOffset, ViewUniforms, @@ -140,10 +140,10 @@ impl GpuPointLights { } } - fn write_buffer(&mut self, render_device: &RenderDevice, render_queue: &RenderQueue) { + fn write_buffer(&mut self, gpu_device: &GpuDevice, gpu_queue: &GpuQueue) { match self { - GpuPointLights::Uniform(buffer) => buffer.write_buffer(render_device, render_queue), - GpuPointLights::Storage(buffer) => buffer.write_buffer(render_device, render_queue), + GpuPointLights::Uniform(buffer) => buffer.write_buffer(gpu_device, gpu_queue), + GpuPointLights::Storage(buffer) => buffer.write_buffer(gpu_device, gpu_queue), } } @@ -225,9 +225,9 @@ pub struct ShadowPipeline { // TODO: this pattern for initializing the shaders / pipeline isn't ideal. this should be handled by the asset system impl FromWorld for ShadowPipeline { fn from_world(world: &mut World) -> Self { - let render_device = world.resource::(); + let gpu_device = world.resource::(); - let view_layout = render_device.create_bind_group_layout(&BindGroupLayoutDescriptor { + let view_layout = gpu_device.create_bind_group_layout(&BindGroupLayoutDescriptor { entries: &[ // View BindGroupLayoutEntry { @@ -251,7 +251,7 @@ impl FromWorld for ShadowPipeline { view_layout, mesh_layout: mesh_pipeline.mesh_layout.clone(), skinned_mesh_layout, - point_light_sampler: render_device.create_sampler(&SamplerDescriptor { + point_light_sampler: gpu_device.create_sampler(&SamplerDescriptor { address_mode_u: AddressMode::ClampToEdge, address_mode_v: AddressMode::ClampToEdge, address_mode_w: AddressMode::ClampToEdge, @@ -261,7 +261,7 @@ impl FromWorld for ShadowPipeline { compare: Some(CompareFunction::GreaterEqual), ..Default::default() }), - directional_light_sampler: render_device.create_sampler(&SamplerDescriptor { + directional_light_sampler: gpu_device.create_sampler(&SamplerDescriptor { address_mode_u: AddressMode::ClampToEdge, address_mode_v: AddressMode::ClampToEdge, address_mode_w: AddressMode::ClampToEdge, @@ -671,7 +671,7 @@ impl FromWorld for GlobalLightMeta { fn from_world(world: &mut World) -> Self { Self::new( world - .resource::() + .resource::() .get_supported_read_only_binding_type(CLUSTERED_FORWARD_STORAGE_BUFFER_COUNT), ) } @@ -758,8 +758,8 @@ pub(crate) fn spot_light_projection_matrix(angle: f32) -> Mat4 { pub fn prepare_lights( mut commands: Commands, mut texture_cache: ResMut, - render_device: Res, - render_queue: Res, + gpu_device: Res, + gpu_queue: Res, mut global_light_meta: ResMut, mut light_meta: ResMut, views: Query< @@ -789,7 +789,7 @@ pub fn prepare_lights( let mut directional_lights: Vec<_> = directional_lights.iter().collect::>(); #[cfg(not(feature = "webgl"))] - let max_texture_array_layers = render_device.limits().max_texture_array_layers as usize; + let max_texture_array_layers = gpu_device.limits().max_texture_array_layers as usize; #[cfg(not(feature = "webgl"))] let max_texture_cubes = max_texture_array_layers / 6; #[cfg(feature = "webgl")] @@ -980,12 +980,12 @@ pub fn prepare_lights( global_light_meta.gpu_point_lights.set(gpu_point_lights); global_light_meta .gpu_point_lights - .write_buffer(&render_device, &render_queue); + .write_buffer(&gpu_device, &gpu_queue); // set up light data for each view for (entity, extracted_view, clusters) in &views { let point_light_depth_texture = texture_cache.get( - &render_device, + &gpu_device, TextureDescriptor { size: Extent3d { width: point_light_shadow_map.size as u32, @@ -1001,13 +1001,13 @@ pub fn prepare_lights( }, ); let directional_light_depth_texture = texture_cache.get( - &render_device, + &gpu_device, TextureDescriptor { size: Extent3d { width: (directional_light_shadow_map.size as u32) - .min(render_device.limits().max_texture_dimension_2d), + .min(gpu_device.limits().max_texture_dimension_2d), height: (directional_light_shadow_map.size as u32) - .min(render_device.limits().max_texture_dimension_2d), + .min(gpu_device.limits().max_texture_dimension_2d), depth_or_array_layers: (directional_shadow_maps_count + spot_light_shadow_maps_count) .max(1) as u32, @@ -1260,7 +1260,7 @@ pub fn prepare_lights( light_meta .view_gpu_lights - .write_buffer(&render_device, &render_queue); + .write_buffer(&gpu_device, &gpu_queue); } // this must match CLUSTER_COUNT_SIZE in pbr.wgsl @@ -1469,21 +1469,21 @@ impl ViewClusterBindings { self.n_indices += 1; } - pub fn write_buffers(&mut self, render_device: &RenderDevice, render_queue: &RenderQueue) { + pub fn write_buffers(&mut self, gpu_device: &GpuDevice, gpu_queue: &GpuQueue) { match &mut self.buffers { ViewClusterBuffers::Uniform { cluster_light_index_lists, cluster_offsets_and_counts, } => { - cluster_light_index_lists.write_buffer(render_device, render_queue); - cluster_offsets_and_counts.write_buffer(render_device, render_queue); + cluster_light_index_lists.write_buffer(gpu_device, gpu_queue); + cluster_offsets_and_counts.write_buffer(gpu_device, gpu_queue); } ViewClusterBuffers::Storage { cluster_light_index_lists, cluster_offsets_and_counts, } => { - cluster_light_index_lists.write_buffer(render_device, render_queue); - cluster_offsets_and_counts.write_buffer(render_device, render_queue); + cluster_light_index_lists.write_buffer(gpu_device, gpu_queue); + cluster_offsets_and_counts.write_buffer(gpu_device, gpu_queue); } } } @@ -1535,8 +1535,8 @@ impl ViewClusterBindings { pub fn prepare_clusters( mut commands: Commands, - render_device: Res, - render_queue: Res, + gpu_device: Res, + gpu_queue: Res, mesh_pipeline: Res, global_light_meta: Res, views: Query< @@ -1548,7 +1548,7 @@ pub fn prepare_clusters( With>, >, ) { - let render_device = render_device.into_inner(); + let gpu_device = gpu_device.into_inner(); let supports_storage_buffers = matches!( mesh_pipeline.clustered_forward_buffer_binding_type, BufferBindingType::Storage { .. } @@ -1594,21 +1594,21 @@ pub fn prepare_clusters( } } - view_clusters_bindings.write_buffers(render_device, &render_queue); + view_clusters_bindings.write_buffers(gpu_device, &gpu_queue); commands.get_or_spawn(entity).insert(view_clusters_bindings); } } pub fn queue_shadow_view_bind_group( - render_device: Res, + gpu_device: Res, shadow_pipeline: Res, mut light_meta: ResMut, view_uniforms: Res, ) { if let Some(view_binding) = view_uniforms.uniforms.binding() { light_meta.shadow_view_bind_group = - Some(render_device.create_bind_group(&BindGroupDescriptor { + Some(gpu_device.create_bind_group(&BindGroupDescriptor { entries: &[BindGroupEntry { binding: 0, resource: view_binding, @@ -1784,7 +1784,7 @@ impl Node for ShadowPassNode { }; let render_pass = render_context - .command_encoder + .gpu_command_encoder .begin_render_pass(&pass_descriptor); let mut render_pass = TrackedRenderPass::new(render_pass); diff --git a/crates/bevy_pbr/src/render/mesh.rs b/crates/bevy_pbr/src/render/mesh.rs index 92b65621922ac..4116a3c032fb8 100644 --- a/crates/bevy_pbr/src/render/mesh.rs +++ b/crates/bevy_pbr/src/render/mesh.rs @@ -22,7 +22,7 @@ use bevy_render::{ render_asset::RenderAssets, render_phase::{PhaseItem, RenderCommand, RenderCommandResult, TrackedRenderPass}, render_resource::*, - renderer::{RenderDevice, RenderQueue}, + renderer::{GpuDevice, GpuQueue}, texture::{ BevyDefault, DefaultImageSampler, GpuImage, Image, ImageSampler, TextureFormatPixelInfo, }, @@ -264,15 +264,15 @@ pub struct MeshPipeline { impl FromWorld for MeshPipeline { fn from_world(world: &mut World) -> Self { let mut system_state: SystemState<( - Res, + Res, Res, - Res, + Res, )> = SystemState::new(world); - let (render_device, default_sampler, render_queue) = system_state.get_mut(world); - let clustered_forward_buffer_binding_type = render_device - .get_supported_read_only_binding_type(CLUSTERED_FORWARD_STORAGE_BUFFER_COUNT); + let (gpu_device, default_sampler, gpu_queue) = system_state.get_mut(world); + let clustered_forward_buffer_binding_type = + gpu_device.get_supported_read_only_binding_type(CLUSTERED_FORWARD_STORAGE_BUFFER_COUNT); - let view_layout = render_device.create_bind_group_layout(&BindGroupLayoutDescriptor { + let view_layout = gpu_device.create_bind_group_layout(&BindGroupLayoutDescriptor { entries: &[ // View BindGroupLayoutEntry { @@ -406,28 +406,27 @@ impl FromWorld for MeshPipeline { count: None, }; - let mesh_layout = render_device.create_bind_group_layout(&BindGroupLayoutDescriptor { + let mesh_layout = gpu_device.create_bind_group_layout(&BindGroupLayoutDescriptor { entries: &[mesh_binding], label: Some("mesh_layout"), }); - let skinned_mesh_layout = - render_device.create_bind_group_layout(&BindGroupLayoutDescriptor { - entries: &[ - mesh_binding, - BindGroupLayoutEntry { - binding: 1, - visibility: ShaderStages::VERTEX, - ty: BindingType::Buffer { - ty: BufferBindingType::Uniform, - has_dynamic_offset: true, - min_binding_size: BufferSize::new(JOINT_BUFFER_SIZE as u64), - }, - count: None, + let skinned_mesh_layout = gpu_device.create_bind_group_layout(&BindGroupLayoutDescriptor { + entries: &[ + mesh_binding, + BindGroupLayoutEntry { + binding: 1, + visibility: ShaderStages::VERTEX, + ty: BindingType::Buffer { + ty: BufferBindingType::Uniform, + has_dynamic_offset: true, + min_binding_size: BufferSize::new(JOINT_BUFFER_SIZE as u64), }, - ], - label: Some("skinned_mesh_layout"), - }); + count: None, + }, + ], + label: Some("skinned_mesh_layout"), + }); // A 1x1x1 'all 1.0' texture to use as a dummy texture to use in place of optional StandardMaterial textures let dummy_white_gpu_image = { @@ -437,14 +436,14 @@ impl FromWorld for MeshPipeline { &[255u8; 4], TextureFormat::bevy_default(), ); - let texture = render_device.create_texture(&image.texture_descriptor); + let texture = gpu_device.create_texture(&image.texture_descriptor); let sampler = match image.sampler_descriptor { ImageSampler::Default => (**default_sampler).clone(), - ImageSampler::Descriptor(descriptor) => render_device.create_sampler(&descriptor), + ImageSampler::Descriptor(descriptor) => gpu_device.create_sampler(&descriptor), }; let format_size = image.texture_descriptor.format.pixel_size(); - render_queue.write_texture( + gpu_queue.write_texture( ImageCopyTexture { texture: &texture, mip_level: 0, @@ -713,13 +712,13 @@ pub struct MeshBindGroup { pub fn queue_mesh_bind_group( mut commands: Commands, mesh_pipeline: Res, - render_device: Res, + gpu_device: Res, mesh_uniforms: Res>, skinned_mesh_uniform: Res, ) { if let Some(mesh_binding) = mesh_uniforms.uniforms().binding() { let mut mesh_bind_group = MeshBindGroup { - normal: render_device.create_bind_group(&BindGroupDescriptor { + normal: gpu_device.create_bind_group(&BindGroupDescriptor { entries: &[BindGroupEntry { binding: 0, resource: mesh_binding.clone(), @@ -731,7 +730,7 @@ pub fn queue_mesh_bind_group( }; if let Some(skinned_joints_buffer) = skinned_mesh_uniform.buffer.buffer() { - mesh_bind_group.skinned = Some(render_device.create_bind_group(&BindGroupDescriptor { + mesh_bind_group.skinned = Some(gpu_device.create_bind_group(&BindGroupDescriptor { entries: &[ BindGroupEntry { binding: 0, @@ -774,8 +773,8 @@ impl Default for SkinnedMeshUniform { } pub fn prepare_skinned_meshes( - render_device: Res, - render_queue: Res, + gpu_device: Res, + gpu_queue: Res, mut skinned_mesh_uniform: ResMut, ) { if skinned_mesh_uniform.buffer.is_empty() { @@ -783,10 +782,10 @@ pub fn prepare_skinned_meshes( } let len = skinned_mesh_uniform.buffer.len(); - skinned_mesh_uniform.buffer.reserve(len, &render_device); + skinned_mesh_uniform.buffer.reserve(len, &gpu_device); skinned_mesh_uniform .buffer - .write_buffer(&render_device, &render_queue); + .write_buffer(&gpu_device, &gpu_queue); } #[derive(Component)] @@ -797,7 +796,7 @@ pub struct MeshViewBindGroup { #[allow(clippy::too_many_arguments)] pub fn queue_mesh_view_bind_groups( mut commands: Commands, - render_device: Res, + gpu_device: Res, mesh_pipeline: Res, shadow_pipeline: Res, light_meta: Res, @@ -813,7 +812,7 @@ pub fn queue_mesh_view_bind_groups( globals_buffer.buffer.binding(), ) { for (entity, view_shadow_bindings, view_cluster_bindings) in &views { - let view_bind_group = render_device.create_bind_group(&BindGroupDescriptor { + let view_bind_group = gpu_device.create_bind_group(&BindGroupDescriptor { entries: &[ BindGroupEntry { binding: 0, diff --git a/crates/bevy_render/macros/src/as_bind_group.rs b/crates/bevy_render/macros/src/as_bind_group.rs index bbc3c3850cf0b..3b0ac96234e12 100644 --- a/crates/bevy_render/macros/src/as_bind_group.rs +++ b/crates/bevy_render/macros/src/as_bind_group.rs @@ -61,7 +61,7 @@ pub fn derive_as_bind_group(ast: syn::DeriveInput) -> Result { let mut buffer = #render_path::render_resource::encase::UniformBuffer::new(Vec::new()); let converted: #converted_shader_type = self.as_bind_group_shader_type(images); buffer.write(&converted).unwrap(); - #render_path::render_resource::OwnedBindingResource::Buffer(render_device.create_buffer_with_data( + #render_path::render_resource::OwnedBindingResource::Buffer(gpu_device.create_buffer_with_data( &#render_path::render_resource::BufferInitDescriptor { label: None, usage: #render_path::render_resource::BufferUsages::COPY_DST | #render_path::render_resource::BufferUsages::UNIFORM, @@ -281,7 +281,7 @@ pub fn derive_as_bind_group(ast: syn::DeriveInput) -> Result { binding_impls.push(quote! {{ let mut buffer = #render_path::render_resource::encase::UniformBuffer::new(Vec::new()); buffer.write(&self.#field_name).unwrap(); - #render_path::render_resource::OwnedBindingResource::Buffer(render_device.create_buffer_with_data( + #render_path::render_resource::OwnedBindingResource::Buffer(gpu_device.create_buffer_with_data( &#render_path::render_resource::BufferInitDescriptor { label: None, usage: #render_path::render_resource::BufferUsages::COPY_DST | #render_path::render_resource::BufferUsages::UNIFORM, @@ -324,7 +324,7 @@ pub fn derive_as_bind_group(ast: syn::DeriveInput) -> Result { buffer.write(&#uniform_struct_name { #(#field_name: &self.#field_name,)* }).unwrap(); - #render_path::render_resource::OwnedBindingResource::Buffer(render_device.create_buffer_with_data( + #render_path::render_resource::OwnedBindingResource::Buffer(gpu_device.create_buffer_with_data( &#render_path::render_resource::BufferInitDescriptor { label: None, usage: #render_path::render_resource::BufferUsages::COPY_DST | #render_path::render_resource::BufferUsages::UNIFORM, @@ -368,7 +368,7 @@ pub fn derive_as_bind_group(ast: syn::DeriveInput) -> Result { fn as_bind_group( &self, layout: &#render_path::render_resource::BindGroupLayout, - render_device: &#render_path::renderer::RenderDevice, + gpu_device: &#render_path::renderer::GpuDevice, images: &#render_path::render_asset::RenderAssets<#render_path::texture::Image>, fallback_image: &#render_path::texture::FallbackImage, ) -> Result<#render_path::render_resource::PreparedBindGroup, #render_path::render_resource::AsBindGroupError> { @@ -380,7 +380,7 @@ pub fn derive_as_bind_group(ast: syn::DeriveInput) -> Result { label: None, layout: &layout, }; - render_device.create_bind_group(&descriptor) + gpu_device.create_bind_group(&descriptor) }; Ok(#render_path::render_resource::PreparedBindGroup { @@ -390,8 +390,8 @@ pub fn derive_as_bind_group(ast: syn::DeriveInput) -> Result { }) } - fn bind_group_layout(render_device: &#render_path::renderer::RenderDevice) -> #render_path::render_resource::BindGroupLayout { - render_device.create_bind_group_layout(&#render_path::render_resource::BindGroupLayoutDescriptor { + fn bind_group_layout(gpu_device: &#render_path::renderer::GpuDevice) -> #render_path::render_resource::BindGroupLayout { + gpu_device.create_bind_group_layout(&#render_path::render_resource::BindGroupLayoutDescriptor { entries: &[#(#binding_layouts,)*], label: None, }) diff --git a/crates/bevy_render/src/camera/camera_driver_node.rs b/crates/bevy_render/src/camera/camera_driver_node.rs index f57929f30caeb..bd959cf857963 100644 --- a/crates/bevy_render/src/camera/camera_driver_node.rs +++ b/crates/bevy_render/src/camera/camera_driver_node.rs @@ -1,7 +1,6 @@ use crate::{ camera::{ExtractedCamera, RenderTarget}, - render_graph::{Node, NodeRunError, RenderGraphContext, SlotValue}, - renderer::RenderContext, + render_graph::{Node, NodeRunError, RenderContext, RenderGraphContext, SlotValue}, view::ExtractedWindows, }; use bevy_ecs::{entity::Entity, prelude::QueryState, world::World}; @@ -98,7 +97,7 @@ impl Node for CameraDriverNode { }; render_context - .command_encoder + .gpu_command_encoder .begin_render_pass(&pass_descriptor); } diff --git a/crates/bevy_render/src/extract_component.rs b/crates/bevy_render/src/extract_component.rs index 7cae7d8065ed5..e8d95eb0ce1e7 100644 --- a/crates/bevy_render/src/extract_component.rs +++ b/crates/bevy_render/src/extract_component.rs @@ -1,6 +1,6 @@ use crate::{ render_resource::{encase::internal::WriteInto, DynamicUniformBuffer, ShaderType}, - renderer::{RenderDevice, RenderQueue}, + renderer::{GpuDevice, GpuQueue}, view::ComputedVisibility, Extract, RenderApp, RenderStage, }; @@ -120,8 +120,8 @@ impl Default for ComponentUniforms { /// They are transformed into uniforms and stored in the [`ComponentUniforms`] resource. fn prepare_uniform_components( mut commands: Commands, - render_device: Res, - render_queue: Res, + gpu_device: Res, + gpu_queue: Res, mut component_uniforms: ResMut>, components: Query<(Entity, &C)>, ) where @@ -144,7 +144,7 @@ fn prepare_uniform_components( component_uniforms .uniforms - .write_buffer(&render_device, &render_queue); + .write_buffer(&gpu_device, &gpu_queue); } /// This plugin extracts the components into the "render world". diff --git a/crates/bevy_render/src/globals.rs b/crates/bevy_render/src/globals.rs index a0b160dd4b27d..1d73080ce2125 100644 --- a/crates/bevy_render/src/globals.rs +++ b/crates/bevy_render/src/globals.rs @@ -1,7 +1,7 @@ use crate::{ extract_resource::ExtractResource, render_resource::{ShaderType, UniformBuffer}, - renderer::{RenderDevice, RenderQueue}, + renderer::{GpuDevice, GpuQueue}, Extract, RenderApp, RenderStage, }; use bevy_app::{App, Plugin}; @@ -59,8 +59,8 @@ pub struct GlobalsBuffer { } fn prepare_globals_buffer( - render_device: Res, - render_queue: Res, + gpu_device: Res, + gpu_queue: Res, mut globals_buffer: ResMut, time: Res