A set of rendering parameters used among render passes. More...
Public Member Functions | |
virtual HD_API void | Prepare (HdResourceRegistrySharedPtr const &resourceRegistry) |
Schedule to update renderPassState parameters. More... | |
Application rendering state | |
HD_API void | SetOverrideColor (GfVec4f const &color) |
Set an override color for rendering where the R, G and B components are the color and the alpha component is the blend value. More... | |
const GfVec4f & | GetOverrideColor () const |
HD_API void | SetWireframeColor (GfVec4f const &color) |
Set a wireframe color for rendering where the R, G and B components are the color and the alpha component is the blend value. More... | |
const GfVec4f & | GetWireframeColor () const |
HD_API void | SetMaskColor (GfVec4f const &color) |
const GfVec4f & | GetMaskColor () const |
HD_API void | SetIndicatorColor (GfVec4f const &color) |
const GfVec4f & | GetIndicatorColor () const |
HD_API void | SetPointColor (GfVec4f const &color) |
Set a point color for rendering where the R, G and B components are the color and the alpha component is the blend value. More... | |
const GfVec4f & | GetPointColor () const |
HD_API void | SetPointSize (float size) |
Set the point size for unselected points. More... | |
float | GetPointSize () const |
HD_API void | SetPointSelectedSize (float size) |
Set the point size for selected points. More... | |
float | GetPointSelectedSize () const |
HD_API void | SetLightingEnabled (bool enabled) |
XXX: Hacky way of disabling lighting. More... | |
bool | GetLightingEnabled () const |
HD_API void | SetClippingEnabled (bool enabled) |
bool | GetClippingEnabled () const |
Camera and framing state | |
using | ClipPlanesVector = std::vector< GfVec4d > |
HD_API void | SetCameraAndFraming (HdCamera const *camera, CameraUtilFraming const &framing, const std::pair< bool, CameraUtilConformWindowPolicy > &overrideWindowPolicy) |
Camera setter API. More... | |
HdCamera const * | GetCamera () const |
Get camera. More... | |
const CameraUtilFraming & | GetFraming () const |
Get framing information determining how the filmback plane maps to pixels. More... | |
const std::pair< bool, CameraUtilConformWindowPolicy > & | GetOverrideWindowPolicy () const |
The override value for the window policy to conform the camera frustum that can be specified by the application. More... | |
HD_API CameraUtilConformWindowPolicy | GetWindowPolicy () const |
The resolved window policy to conform the camera frustum. More... | |
HD_API void | SetCameraAndViewport (HdCamera const *camera, GfVec4d const &viewport) |
Camera setter API The view, projection and clipping plane info of the camera will be used. More... | |
HD_API GfMatrix4d | GetWorldToViewMatrix () const |
Camera getter API. More... | |
HD_API GfMatrix4d | GetProjectionMatrix () const |
It is expected that an HdCamera was specified that has physically based attributes. More... | |
GfVec4f const & | GetViewport () const |
Only use when clients did not specify a camera framing. More... | |
HD_API ClipPlanesVector const & | GetClipPlanes () const |
GfMatrix4d | GetCullMatrix () const |
Render pipeline state | |
enum | ColorMask { ColorMaskNone, ColorMaskRGB, ColorMaskRGBA } |
HdCamera const * | _camera |
GfVec4f | _viewport |
CameraUtilFraming | _framing |
std::pair< bool, CameraUtilConformWindowPolicy > | _overrideWindowPolicy |
GfMatrix4d | _cullMatrix |
GfMatrix4d | _worldToViewMatrix |
GfMatrix4d | _projectionMatrix |
ClipPlanesVector | _clipPlanes |
GfVec4f | _overrideColor |
GfVec4f | _wireframeColor |
GfVec4f | _pointColor |
float | _pointSize |
bool | _lightingEnabled |
bool | _clippingEnabled |
GfVec4f | _maskColor |
GfVec4f | _indicatorColor |
float | _pointSelectedSize |
float | _alphaThreshold |
float | _tessLevel |
GfVec2f | _drawRange |
bool | _depthBiasUseDefault |
bool | _depthBiasEnabled |
float | _depthBiasConstantFactor |
float | _depthBiasSlopeFactor |
HdCompareFunction | _depthFunc |
bool | _depthMaskEnabled |
bool | _depthTestEnabled |
HdCullStyle | _cullStyle |
HdCompareFunction | _stencilFunc |
int | _stencilRef |
int | _stencilMask |
HdStencilOp | _stencilFailOp |
HdStencilOp | _stencilZFailOp |
HdStencilOp | _stencilZPassOp |
bool | _stencilEnabled |
float | _lineWidth |
HdBlendOp | _blendColorOp |
HdBlendFactor | _blendColorSrcFactor |
HdBlendFactor | _blendColorDstFactor |
HdBlendOp | _blendAlphaOp |
HdBlendFactor | _blendAlphaSrcFactor |
HdBlendFactor | _blendAlphaDstFactor |
GfVec4f | _blendConstantColor |
bool | _blendEnabled |
bool | _alphaToCoverageEnabled |
bool | _colorMaskUseDefault |
std::vector< ColorMask > | _colorMasks |
HdRenderPassAovBindingVector | _aovBindings |
HdRenderPassAovBindingVector | _aovInputBindings |
bool | _useMultiSampleAov |
HD_API void | SetAovBindings (HdRenderPassAovBindingVector const &aovBindings) |
Set the attachments for this renderpass to render into. More... | |
HD_API HdRenderPassAovBindingVector const & | GetAovBindings () const |
HD_API void | SetAovInputBindings (HdRenderPassAovBindingVector const &aovBindings) |
Set the AOVs that this renderpass needs to read from. More... | |
HD_API HdRenderPassAovBindingVector const & | GetAovInputBindings () const |
HD_API void | SetUseAovMultiSample (bool state) |
Returns true if the render pass wants to render into the multi-sample aovs. More... | |
HD_API bool | GetUseAovMultiSample () const |
HD_API void | SetCullStyle (HdCullStyle cullStyle) |
HD_API HdCullStyle | GetCullStyle () const |
HD_API void | SetAlphaThreshold (float alphaThreshold) |
float | GetAlphaThreshold () const |
HD_API void | SetTessLevel (float level) |
float | GetTessLevel () const |
HD_API void | SetDrawingRange (GfVec2f const &drawRange) |
GfVec2f | GetDrawingRange () const |
GfVec2f | GetDrawingRangeNDC () const |
HD_API void | SetDepthBiasUseDefault (bool useDefault) |
bool | GetDepthBiasUseDefault () const |
HD_API void | SetDepthBiasEnabled (bool enabled) |
bool | GetDepthBiasEnabled () const |
HD_API void | SetDepthBias (float constantFactor, float slopeFactor) |
HD_API void | SetDepthFunc (HdCompareFunction depthFunc) |
HdCompareFunction | GetDepthFunc () const |
HD_API void | SetEnableDepthMask (bool state) |
HD_API bool | GetEnableDepthMask () |
HD_API void | SetEnableDepthTest (bool enabled) |
HD_API bool | GetEnableDepthTest () const |
HD_API void | SetStencil (HdCompareFunction func, int ref, int mask, HdStencilOp fail, HdStencilOp zfail, HdStencilOp zpass) |
HdCompareFunction | GetStencilFunc () const |
int | GetStencilRef () const |
int | GetStencilMask () const |
HdStencilOp | GetStencilFailOp () const |
HdStencilOp | GetStencilDepthFailOp () const |
HdStencilOp | GetStencilDepthPassOp () const |
HD_API void | SetStencilEnabled (bool enabled) |
HD_API bool | GetStencilEnabled () const |
HD_API void | SetLineWidth (float width) |
float | GetLineWidth () const |
HD_API void | SetBlend (HdBlendOp colorOp, HdBlendFactor colorSrcFactor, HdBlendFactor colorDstFactor, HdBlendOp alphaOp, HdBlendFactor alphaSrcFactor, HdBlendFactor alphaDstFactor) |
HdBlendOp | GetBlendColorOp () |
HdBlendFactor | GetBlendColorSrcFactor () |
HdBlendFactor | GetBlendColorDstFactor () |
HdBlendOp | GetBlendAlphaOp () |
HdBlendFactor | GetBlendAlphaSrcFactor () |
HdBlendFactor | GetBlendAlphaDstFactor () |
HD_API void | SetBlendConstantColor (GfVec4f const &color) |
const GfVec4f & | GetBlendConstantColor () const |
HD_API void | SetBlendEnabled (bool enabled) |
HD_API void | SetAlphaToCoverageEnabled (bool enabled) |
bool | GetAlphaToCoverageEnabled () const |
HD_API void | SetColorMaskUseDefault (bool useDefault) |
bool | GetColorMaskUseDefault () const |
HD_API void | SetColorMasks (std::vector< ColorMask > const &masks) |
std::vector< ColorMask > const & | GetColorMasks () const |
A set of rendering parameters used among render passes.
Parameters are expressed as GL states, uniforms or shaders.
Definition at line 60 of file renderPassState.h.
|
inline |
Get camera.
Definition at line 99 of file renderPassState.h.
|
inline |
Get framing information determining how the filmback plane maps to pixels.
Definition at line 104 of file renderPassState.h.
|
inline |
The override value for the window policy to conform the camera frustum that can be specified by the application.
Definition at line 109 of file renderPassState.h.
HD_API GfMatrix4d GetProjectionMatrix | ( | ) | const |
It is expected that an HdCamera was specified that has physically based attributes.
The projection matrix is computed from those attributes and the conform window policy is applied.
For backwards compatibility with scene and render delegates: if the HdCamera has no physically based attributes (more precisely, the scene delegate provided a VtValue for focalLength that is either empty or 1.0f), the HdCamera's projection matrix is used. The HdRenderPassState also has a fallback value for the projection matrix that is used if no HdCamera was specified, that can be set with, e.g.g, HdStRenderPassState::SetCameraFramingState.
|
inline |
Only use when clients did not specify a camera framing.
Definition at line 155 of file renderPassState.h.
HD_API CameraUtilConformWindowPolicy GetWindowPolicy | ( | ) | const |
The resolved window policy to conform the camera frustum.
This is either the override value specified by the application or the value from the scene delegate's camera.
HD_API GfMatrix4d GetWorldToViewMatrix | ( | ) | const |
Camera getter API.
For backwards compatibility, use the worldToView matrix of the HdCamera if given. Otherwise, use the HdCamera's transform.
The HdRenderPassState also has a fallback value for the view matrix that is used if no HdCamera was specified, that can be set with, e.g.g, HdStRenderPassState::SetCameraFramingState.
|
virtual |
Schedule to update renderPassState parameters.
e.g. camera matrix, override color, id blend factor. Prepare, called once per frame after the sync phase, but prior to the commit phase.
Reimplemented in HdStRenderPassState.
HD_API void SetAovBindings | ( | HdRenderPassAovBindingVector const & | aovBindings | ) |
Set the attachments for this renderpass to render into.
HD_API void SetAovInputBindings | ( | HdRenderPassAovBindingVector const & | aovBindings | ) |
Set the AOVs that this renderpass needs to read from.
HD_API void SetCameraAndFraming | ( | HdCamera const * | camera, |
CameraUtilFraming const & | framing, | ||
const std::pair< bool, CameraUtilConformWindowPolicy > & | overrideWindowPolicy | ||
) |
Camera setter API.
Sets the camera transform (aka view inverse matrix) and physical parameters, the framing information and a possible overide value for the window policy used to conform the camera frustum if its aspect ratio is not matching the display window.
Note: using std::pair<bool, ...> here instead of std::optional<...> since the latter is only available in C++17 or later.
Camera setter API The view, projection and clipping plane info of the camera will be used.
HD_API void SetLightingEnabled | ( | bool | enabled | ) |
XXX: Hacky way of disabling lighting.
HD_API void SetOverrideColor | ( | GfVec4f const & | color | ) |
Set an override color for rendering where the R, G and B components are the color and the alpha component is the blend value.
HD_API void SetPointColor | ( | GfVec4f const & | color | ) |
Set a point color for rendering where the R, G and B components are the color and the alpha component is the blend value.
HD_API void SetPointSelectedSize | ( | float | size | ) |
Set the point size for selected points.
HD_API void SetPointSize | ( | float | size | ) |
Set the point size for unselected points.
HD_API void SetUseAovMultiSample | ( | bool | state | ) |
Returns true if the render pass wants to render into the multi-sample aovs.
Returns false if the render wants to render into the resolve aovs.
HD_API void SetWireframeColor | ( | GfVec4f const & | color | ) |
Set a wireframe color for rendering where the R, G and B components are the color and the alpha component is the blend value.