pub struct Resolver { /* private fields */ }
Expand description

A structure which can read and execute render graphs. This pattern was derived from:

http://themaister.net/blog/2017/08/15/render-graphs-and-vulkan-a-deep-dive/ https://github.com/EmbarkStudios/kajiya

Implementations

Returns true when all recorded passes have been submitted to a driver command buffer.

A fully-resolved graph contains no additional work and may be discarded, although doing so will stall the GPU while the fences are waited on. It is preferrable to wait a few frame so that the fences will have already been signalled.

Returns the stages that process the given node.

Note that this value must be retrieved before resolving a node as there will be no data left to inspect afterwards!

Records any pending render graph passes that are required by the given node, but does not record any passes that actually contain the given node.

As a side effect, the graph is optimized for the given node. Future calls may further optimize the graph, but only on top of the existing optimizations. This only matters if you are pulling multiple images out and you care - in that case pull the “most important” image first.

Records any pending render graph passes that the given node requires.

Records any pending render graph passes that have not been previously scheduled.

Submits the remaining commands stored in this instance.

Trait Implementations

Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.