mirror of
https://github.com/gfx-rs/wgpu.git
synced 2024-11-21 22:33:49 +00:00
Fix nightly warnings about docs
This commit is contained in:
parent
4b15f1b337
commit
38df943ffe
@ -1,35 +1,35 @@
|
|||||||
/*! Render Bundles
|
/*! Render Bundles
|
||||||
|
|
||||||
## Software implementation
|
## Software implementation
|
||||||
|
|
||||||
The path from nothing to using a render bundle consists of 3 phases.
|
The path from nothing to using a render bundle consists of 3 phases.
|
||||||
|
|
||||||
### Initial command encoding
|
### Initial command encoding
|
||||||
|
|
||||||
User creates a `RenderBundleEncoder` and populates it by issuing commands
|
User creates a `RenderBundleEncoder` and populates it by issuing commands
|
||||||
from `bundle_ffi` module, just like with `RenderPass`, except that the
|
from `bundle_ffi` module, just like with `RenderPass`, except that the
|
||||||
set of available commands is reduced. Everything is written into a `RawPass`.
|
set of available commands is reduced. Everything is written into a `RawPass`.
|
||||||
|
|
||||||
### Bundle baking
|
### Bundle baking
|
||||||
|
|
||||||
Once the commands are encoded, user calls `render_bundle_encoder_finish`.
|
Once the commands are encoded, user calls `render_bundle_encoder_finish`.
|
||||||
This is perhaps the most complex part of the logic. It consumes the
|
This is perhaps the most complex part of the logic. It consumes the
|
||||||
commands stored in `RawPass`, while validating everything, tracking the state,
|
commands stored in `RawPass`, while validating everything, tracking the state,
|
||||||
and re-recording the commands into a separate `Vec<RenderCommand>`. It
|
and re-recording the commands into a separate `Vec<RenderCommand>`. It
|
||||||
doesn't actually execute any commands.
|
doesn't actually execute any commands.
|
||||||
|
|
||||||
What's more important, is that the produced vector of commands is "normalized",
|
What's more important, is that the produced vector of commands is "normalized",
|
||||||
which means it can be executed verbatim without any state tracking. More
|
which means it can be executed verbatim without any state tracking. More
|
||||||
formally, "normalized" command stream guarantees that any state required by
|
formally, "normalized" command stream guarantees that any state required by
|
||||||
a draw call is set explicitly by one of the commands between the draw call
|
a draw call is set explicitly by one of the commands between the draw call
|
||||||
and the last changing of the pipeline.
|
and the last changing of the pipeline.
|
||||||
|
|
||||||
### Execution
|
### Execution
|
||||||
|
|
||||||
When the bundle is used in an actual render pass, `RenderBundle::execute` is
|
When the bundle is used in an actual render pass, `RenderBundle::execute` is
|
||||||
called. It goes through the commands and issues them into the native command
|
called. It goes through the commands and issues them into the native command
|
||||||
buffer. Thanks to the "normalized" property, it doesn't track any bind group
|
buffer. Thanks to the "normalized" property, it doesn't track any bind group
|
||||||
invalidations or index format changes.
|
invalidations or index format changes.
|
||||||
!*/
|
!*/
|
||||||
#![allow(clippy::reversed_empty_ranges)]
|
#![allow(clippy::reversed_empty_ranges)]
|
||||||
|
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
/*! Presentation.
|
/*! Presentation.
|
||||||
|
|
||||||
## Lifecycle
|
## Lifecycle
|
||||||
|
|
||||||
Whenever a submission detects the use of any surface texture, it adds it to the device
|
Whenever a submission detects the use of any surface texture, it adds it to the device
|
||||||
tracker for the duration of the submission (temporarily, while recording).
|
tracker for the duration of the submission (temporarily, while recording).
|
||||||
It's added with `UNINITIALIZED` state and transitioned into `empty()` state.
|
It's added with `UNINITIALIZED` state and transitioned into `empty()` state.
|
||||||
When this texture is presented, we remove it from the device tracker as well as
|
When this texture is presented, we remove it from the device tracker as well as
|
||||||
extract it from the hub.
|
extract it from the hub.
|
||||||
!*/
|
!*/
|
||||||
|
|
||||||
#[cfg(feature = "trace")]
|
#[cfg(feature = "trace")]
|
||||||
|
Loading…
Reference in New Issue
Block a user