7#ifndef PXR_IMAGING_HD_AOV_H
8#define PXR_IMAGING_HD_AOV_H
12#include "pxr/imaging/hd/api.h"
13#include "pxr/imaging/hd/types.h"
14#include "pxr/usd/sdf/path.h"
16#include "pxr/base/tf/hashmap.h"
17#include "pxr/base/vt/value.h"
19PXR_NAMESPACE_OPEN_SCOPE
21typedef TfHashMap<TfToken, VtValue, TfToken::HashFunctor> HdAovSettingsMap;
62typedef std::vector<HdAovDescriptor> HdAovDescriptorList;
89 return !(*
this == rhs);
137typedef std::vector<HdRenderPassAovBinding> HdRenderPassAovBindingVector;
155bool HdAovHasDepthSemantic(
TfToken const& aovName);
159bool HdAovHasDepthStencilSemantic(
TfToken const& aovName);
176typedef std::vector<HdParsedAovToken> HdParsedAovTokenVector;
178PXR_NAMESPACE_CLOSE_SCOPE
Basic type for a vector of 3 int components.
A render buffer is a handle to a data resource that can be rendered into, such as a 2d image for a dr...
A path value used to locate objects in layers or scenegraphs.
Token for efficient comparison, assignment, and hashing of known strings.
Provides a container which may hold any type, and provides introspection and iteration over array typ...
GF_API std::ostream & operator<<(std::ostream &, const GfBBox3d &)
Output a GfBBox3d using the format [(range) matrix zeroArea].
A bundle of state describing an AOV ("Arbitrary Output Variable") display channel.
bool multiSampled
Whether the render buffer should be multisampled.
VtValue clearValue
The clear value to apply to the render buffer before rendering.
HdFormat format
The AOV output format. See also HdRenderBufferDescriptor::format.
HdAovSettingsMap aovSettings
Extra settings for AOV rendering, such as pixel filtering options.
Represents an AOV token which has been parsed to extract the prefix (in the case of "primvars:"/"lpe:...
Describes the allocation structure of a render buffer bprim.
bool multiSampled
Whether the render buffer should be multisampled.
GfVec3i dimensions
The width, height, and depth of the allocated render buffer.
HdFormat format
The data format of the render buffer. See also HdAovDescriptor::format.
A renderpass AOV represents a binding of some output of the rendering process to an output buffer.
HdRenderBuffer * renderBuffer
The render buffer to be bound to the above terminal output.
VtValue clearValue
The clear value to apply to the bound render buffer, before rendering.
SdfPath renderBufferId
The render buffer to be bound to the above terminal output.
TfToken aovName
The identifier of the renderer output to be consumed.
HdAovSettingsMap aovSettings
Extra settings for AOV rendering, such as pixel filtering options.