Update render_resource gpu buffer doc comments (#17118)
Minor improvement to the render_resource doc comments; specifically, the gpu buffer types - makes them consistently reference each other - reorders them to be alphabetical - removes duplicated entries
This commit is contained in:
parent
68b779c31f
commit
99b0d574f9
@ -29,13 +29,13 @@ use super::GpuArrayBufferable;
|
|||||||
/// from system RAM to VRAM.
|
/// from system RAM to VRAM.
|
||||||
///
|
///
|
||||||
/// Other options for storing GPU-accessible data are:
|
/// Other options for storing GPU-accessible data are:
|
||||||
/// * [`StorageBuffer`](crate::render_resource::StorageBuffer)
|
/// * [`BufferVec`]
|
||||||
/// * [`DynamicStorageBuffer`](crate::render_resource::DynamicStorageBuffer)
|
/// * [`DynamicStorageBuffer`](crate::render_resource::DynamicStorageBuffer)
|
||||||
/// * [`UniformBuffer`](crate::render_resource::UniformBuffer)
|
|
||||||
/// * [`DynamicUniformBuffer`](crate::render_resource::DynamicUniformBuffer)
|
/// * [`DynamicUniformBuffer`](crate::render_resource::DynamicUniformBuffer)
|
||||||
/// * [`GpuArrayBuffer`](crate::render_resource::GpuArrayBuffer)
|
/// * [`GpuArrayBuffer`](crate::render_resource::GpuArrayBuffer)
|
||||||
/// * [`BufferVec`]
|
/// * [`StorageBuffer`](crate::render_resource::StorageBuffer)
|
||||||
/// * [`Texture`](crate::render_resource::Texture)
|
/// * [`Texture`](crate::render_resource::Texture)
|
||||||
|
/// * [`UniformBuffer`](crate::render_resource::UniformBuffer)
|
||||||
pub struct RawBufferVec<T: NoUninit> {
|
pub struct RawBufferVec<T: NoUninit> {
|
||||||
values: Vec<T>,
|
values: Vec<T>,
|
||||||
buffer: Option<Buffer>,
|
buffer: Option<Buffer>,
|
||||||
@ -233,6 +233,15 @@ impl<T: NoUninit> Extend<T> for RawBufferVec<T> {
|
|||||||
/// CPU access to the data after it's been added via [`BufferVec::push`]. If you
|
/// CPU access to the data after it's been added via [`BufferVec::push`]. If you
|
||||||
/// need CPU access to the data, consider another type, such as
|
/// need CPU access to the data, consider another type, such as
|
||||||
/// [`StorageBuffer`][super::StorageBuffer].
|
/// [`StorageBuffer`][super::StorageBuffer].
|
||||||
|
///
|
||||||
|
/// Other options for storing GPU-accessible data are:
|
||||||
|
/// * [`DynamicStorageBuffer`](crate::render_resource::DynamicStorageBuffer)
|
||||||
|
/// * [`DynamicUniformBuffer`](crate::render_resource::DynamicUniformBuffer)
|
||||||
|
/// * [`GpuArrayBuffer`](crate::render_resource::GpuArrayBuffer)
|
||||||
|
/// * [`RawBufferVec`]
|
||||||
|
/// * [`StorageBuffer`](crate::render_resource::StorageBuffer)
|
||||||
|
/// * [`Texture`](crate::render_resource::Texture)
|
||||||
|
/// * [`UniformBuffer`](crate::render_resource::UniformBuffer)
|
||||||
pub struct BufferVec<T>
|
pub struct BufferVec<T>
|
||||||
where
|
where
|
||||||
T: ShaderType + WriteInto,
|
T: ShaderType + WriteInto,
|
||||||
|
|||||||
@ -24,13 +24,13 @@ impl<T: ShaderType + ShaderSize + WriteInto + Clone> GpuArrayBufferable for T {}
|
|||||||
/// binding (within reasonable limits).
|
/// binding (within reasonable limits).
|
||||||
///
|
///
|
||||||
/// Other options for storing GPU-accessible data are:
|
/// Other options for storing GPU-accessible data are:
|
||||||
/// * [`StorageBuffer`](crate::render_resource::StorageBuffer)
|
/// * [`BufferVec`]
|
||||||
/// * [`DynamicStorageBuffer`](crate::render_resource::DynamicStorageBuffer)
|
/// * [`DynamicStorageBuffer`](crate::render_resource::DynamicStorageBuffer)
|
||||||
/// * [`UniformBuffer`](crate::render_resource::UniformBuffer)
|
|
||||||
/// * [`DynamicUniformBuffer`](crate::render_resource::DynamicUniformBuffer)
|
/// * [`DynamicUniformBuffer`](crate::render_resource::DynamicUniformBuffer)
|
||||||
/// * [`RawBufferVec`](crate::render_resource::RawBufferVec)
|
/// * [`RawBufferVec`](crate::render_resource::RawBufferVec)
|
||||||
/// * [`BufferVec`]
|
/// * [`StorageBuffer`](crate::render_resource::StorageBuffer)
|
||||||
/// * [`Texture`](crate::render_resource::Texture)
|
/// * [`Texture`](crate::render_resource::Texture)
|
||||||
|
/// * [`UniformBuffer`](crate::render_resource::UniformBuffer)
|
||||||
#[derive(Resource)]
|
#[derive(Resource)]
|
||||||
pub enum GpuArrayBuffer<T: GpuArrayBufferable> {
|
pub enum GpuArrayBuffer<T: GpuArrayBufferable> {
|
||||||
Uniform(BatchedUniformBuffer<T>),
|
Uniform(BatchedUniformBuffer<T>),
|
||||||
|
|||||||
@ -22,14 +22,13 @@ use super::IntoBinding;
|
|||||||
/// is automatically enforced by this structure.
|
/// is automatically enforced by this structure.
|
||||||
///
|
///
|
||||||
/// Other options for storing GPU-accessible data are:
|
/// Other options for storing GPU-accessible data are:
|
||||||
|
/// * [`BufferVec`](crate::render_resource::BufferVec)
|
||||||
/// * [`DynamicStorageBuffer`]
|
/// * [`DynamicStorageBuffer`]
|
||||||
/// * [`UniformBuffer`](crate::render_resource::UniformBuffer)
|
|
||||||
/// * [`DynamicUniformBuffer`](crate::render_resource::DynamicUniformBuffer)
|
/// * [`DynamicUniformBuffer`](crate::render_resource::DynamicUniformBuffer)
|
||||||
/// * [`GpuArrayBuffer`](crate::render_resource::GpuArrayBuffer)
|
/// * [`GpuArrayBuffer`](crate::render_resource::GpuArrayBuffer)
|
||||||
/// * [`RawBufferVec`](crate::render_resource::RawBufferVec)
|
/// * [`RawBufferVec`](crate::render_resource::RawBufferVec)
|
||||||
/// * [`BufferVec`](crate::render_resource::BufferVec)
|
|
||||||
/// * [`BufferVec`](crate::render_resource::BufferVec)
|
|
||||||
/// * [`Texture`](crate::render_resource::Texture)
|
/// * [`Texture`](crate::render_resource::Texture)
|
||||||
|
/// * [`UniformBuffer`](crate::render_resource::UniformBuffer)
|
||||||
///
|
///
|
||||||
/// [std430 alignment/padding requirements]: https://www.w3.org/TR/WGSL/#address-spaces-storage
|
/// [std430 alignment/padding requirements]: https://www.w3.org/TR/WGSL/#address-spaces-storage
|
||||||
pub struct StorageBuffer<T: ShaderType> {
|
pub struct StorageBuffer<T: ShaderType> {
|
||||||
@ -170,14 +169,13 @@ impl<'a, T: ShaderType + WriteInto> IntoBinding<'a> for &'a StorageBuffer<T> {
|
|||||||
/// will additionally be aligned to meet dynamic offset alignment requirements.
|
/// will additionally be aligned to meet dynamic offset alignment requirements.
|
||||||
///
|
///
|
||||||
/// Other options for storing GPU-accessible data are:
|
/// Other options for storing GPU-accessible data are:
|
||||||
/// * [`StorageBuffer`]
|
/// * [`BufferVec`](crate::render_resource::BufferVec)
|
||||||
/// * [`UniformBuffer`](crate::render_resource::UniformBuffer)
|
|
||||||
/// * [`DynamicUniformBuffer`](crate::render_resource::DynamicUniformBuffer)
|
/// * [`DynamicUniformBuffer`](crate::render_resource::DynamicUniformBuffer)
|
||||||
/// * [`GpuArrayBuffer`](crate::render_resource::GpuArrayBuffer)
|
/// * [`GpuArrayBuffer`](crate::render_resource::GpuArrayBuffer)
|
||||||
/// * [`RawBufferVec`](crate::render_resource::RawBufferVec)
|
/// * [`RawBufferVec`](crate::render_resource::RawBufferVec)
|
||||||
/// * [`BufferVec`](crate::render_resource::BufferVec)
|
/// * [`StorageBuffer`]
|
||||||
/// * [`BufferVec`](crate::render_resource::BufferVec)
|
|
||||||
/// * [`Texture`](crate::render_resource::Texture)
|
/// * [`Texture`](crate::render_resource::Texture)
|
||||||
|
/// * [`UniformBuffer`](crate::render_resource::UniformBuffer)
|
||||||
///
|
///
|
||||||
/// [std430 alignment/padding requirements]: https://www.w3.org/TR/WGSL/#address-spaces-storage
|
/// [std430 alignment/padding requirements]: https://www.w3.org/TR/WGSL/#address-spaces-storage
|
||||||
pub struct DynamicStorageBuffer<T: ShaderType> {
|
pub struct DynamicStorageBuffer<T: ShaderType> {
|
||||||
|
|||||||
@ -11,6 +11,15 @@ define_atomic_id!(TextureId);
|
|||||||
///
|
///
|
||||||
/// May be converted from and dereferences to a wgpu [`Texture`](wgpu::Texture).
|
/// May be converted from and dereferences to a wgpu [`Texture`](wgpu::Texture).
|
||||||
/// Can be created via [`RenderDevice::create_texture`](crate::renderer::RenderDevice::create_texture).
|
/// Can be created via [`RenderDevice::create_texture`](crate::renderer::RenderDevice::create_texture).
|
||||||
|
///
|
||||||
|
/// Other options for storing GPU-accessible data are:
|
||||||
|
/// * [`BufferVec`](crate::render_resource::BufferVec)
|
||||||
|
/// * [`DynamicStorageBuffer`](crate::render_resource::DynamicStorageBuffer)
|
||||||
|
/// * [`DynamicUniformBuffer`](crate::render_resource::DynamicUniformBuffer)
|
||||||
|
/// * [`GpuArrayBuffer`](crate::render_resource::GpuArrayBuffer)
|
||||||
|
/// * [`RawBufferVec`](crate::render_resource::RawBufferVec)
|
||||||
|
/// * [`StorageBuffer`](crate::render_resource::StorageBuffer)
|
||||||
|
/// * [`UniformBuffer`](crate::render_resource::UniformBuffer)
|
||||||
#[derive(Clone, Debug)]
|
#[derive(Clone, Debug)]
|
||||||
pub struct Texture {
|
pub struct Texture {
|
||||||
id: TextureId,
|
id: TextureId,
|
||||||
|
|||||||
@ -27,12 +27,12 @@ use super::IntoBinding;
|
|||||||
/// (vectors), or structures with fields that are vectors.
|
/// (vectors), or structures with fields that are vectors.
|
||||||
///
|
///
|
||||||
/// Other options for storing GPU-accessible data are:
|
/// Other options for storing GPU-accessible data are:
|
||||||
/// * [`StorageBuffer`](crate::render_resource::StorageBuffer)
|
/// * [`BufferVec`](crate::render_resource::BufferVec)
|
||||||
/// * [`DynamicStorageBuffer`](crate::render_resource::DynamicStorageBuffer)
|
/// * [`DynamicStorageBuffer`](crate::render_resource::DynamicStorageBuffer)
|
||||||
/// * [`DynamicUniformBuffer`]
|
/// * [`DynamicUniformBuffer`]
|
||||||
/// * [`GpuArrayBuffer`](crate::render_resource::GpuArrayBuffer)
|
/// * [`GpuArrayBuffer`](crate::render_resource::GpuArrayBuffer)
|
||||||
/// * [`RawBufferVec`](crate::render_resource::RawBufferVec)
|
/// * [`RawBufferVec`](crate::render_resource::RawBufferVec)
|
||||||
/// * [`BufferVec`](crate::render_resource::BufferVec)
|
/// * [`StorageBuffer`](crate::render_resource::StorageBuffer)
|
||||||
/// * [`Texture`](crate::render_resource::Texture)
|
/// * [`Texture`](crate::render_resource::Texture)
|
||||||
///
|
///
|
||||||
/// [std140 alignment/padding requirements]: https://www.w3.org/TR/WGSL/#address-spaces-uniform
|
/// [std140 alignment/padding requirements]: https://www.w3.org/TR/WGSL/#address-spaces-uniform
|
||||||
@ -164,14 +164,13 @@ impl<'a, T: ShaderType + WriteInto> IntoBinding<'a> for &'a UniformBuffer<T> {
|
|||||||
/// (vectors), or structures with fields that are vectors.
|
/// (vectors), or structures with fields that are vectors.
|
||||||
///
|
///
|
||||||
/// Other options for storing GPU-accessible data are:
|
/// Other options for storing GPU-accessible data are:
|
||||||
/// * [`StorageBuffer`](crate::render_resource::StorageBuffer)
|
/// * [`BufferVec`](crate::render_resource::BufferVec)
|
||||||
/// * [`DynamicStorageBuffer`](crate::render_resource::DynamicStorageBuffer)
|
/// * [`DynamicStorageBuffer`](crate::render_resource::DynamicStorageBuffer)
|
||||||
/// * [`UniformBuffer`]
|
|
||||||
/// * [`DynamicUniformBuffer`]
|
|
||||||
/// * [`GpuArrayBuffer`](crate::render_resource::GpuArrayBuffer)
|
/// * [`GpuArrayBuffer`](crate::render_resource::GpuArrayBuffer)
|
||||||
/// * [`RawBufferVec`](crate::render_resource::RawBufferVec)
|
/// * [`RawBufferVec`](crate::render_resource::RawBufferVec)
|
||||||
/// * [`BufferVec`](crate::render_resource::BufferVec)
|
/// * [`StorageBuffer`](crate::render_resource::StorageBuffer)
|
||||||
/// * [`Texture`](crate::render_resource::Texture)
|
/// * [`Texture`](crate::render_resource::Texture)
|
||||||
|
/// * [`UniformBuffer`]
|
||||||
///
|
///
|
||||||
/// [std140 alignment/padding requirements]: https://www.w3.org/TR/WGSL/#address-spaces-uniform
|
/// [std140 alignment/padding requirements]: https://www.w3.org/TR/WGSL/#address-spaces-uniform
|
||||||
pub struct DynamicUniformBuffer<T: ShaderType> {
|
pub struct DynamicUniformBuffer<T: ShaderType> {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user