All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HdStRenderPassState Class Reference

A set of rendering parameters used among render passes. More...

+ Inheritance diagram for HdStRenderPassState:

Public Member Functions

HDST_API HdStRenderPassState (HdStRenderPassShaderSharedPtr const &shader)
 
HDST_API void Prepare (HdResourceRegistrySharedPtr const &resourceRegistry) override
 Schedule to update renderPassState parameters. More...
 
HDST_API void Bind ()
 XXX: Bind and Unbind set. More...
 
HDST_API void Unbind ()
 
HD_API void SetResolveAovMultiSample (bool state)
 If set to true (default) and the render pass is rendering into a multi-sampled aovs, the aovs will be resolved at the end of the render pass. More...
 
HD_API bool GetResolveAovMultiSample () const
 
HDST_API void SetLightingShader (HdStLightingShaderSharedPtr const &lightingShader)
 Set lighting shader. More...
 
HdStLightingShaderSharedPtr const & GetLightingShader () const
 
HDST_API void SetRenderPassShader (HdStRenderPassShaderSharedPtr const &renderPassShader)
 renderpass shader More...
 
HdStRenderPassShaderSharedPtr
const & 
GetRenderPassShader () const
 
HDST_API void SetUseSceneMaterials (bool state)
 scene materials More...
 
bool GetUseSceneMaterials () const
 
HDST_API
HdStShaderCodeSharedPtrVector 
GetShaders () const
 returns shaders (lighting/renderpass) More...
 
HDST_API size_t GetShaderHash () const
 
HD_API void SetCameraFramingState (GfMatrix4d const &worldToViewMatrix, GfMatrix4d const &projectionMatrix, GfVec4d const &viewport, ClipPlanesVector const &clipPlanes)
 Camera setter API Option 1: Specify matrices, viewport and clipping planes (defined in camera space) directly. More...
 
HDST_API HgiGraphicsCmdsDesc MakeGraphicsCmdsDesc (const HdRenderIndex *) const
 
- Public Member Functions inherited from HdRenderPassState
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 GfVec4fGetOverrideColor () 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 GfVec4fGetWireframeColor () const
 
HD_API void SetMaskColor (GfVec4f const &color)
 
const GfVec4fGetMaskColor () const
 
HD_API void SetIndicatorColor (GfVec4f const &color)
 
const GfVec4fGetIndicatorColor () 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 GfVec4fGetPointColor () 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
 
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 CameraUtilFramingGetFraming () 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
 
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 GfVec4fGetBlendConstantColor () 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
 

Detailed Description

A set of rendering parameters used among render passes.

Parameters are expressed as GL states, uniforms or shaders.

Definition at line 56 of file renderPassState.h.

Member Function Documentation

HDST_API void Bind ( )

XXX: Bind and Unbind set.

/restore the following GL state. This will be reworked to use Hgi in the near future. Following states may be changed and restored to the GL default at Unbind(). glEnable(GL_BLEND); glEnable(GL_CULL_FACE); glEnable(GL_POLYGON_OFFSET_FILL) glEnable(GL_PROGRAM_POINT_SIZE); glEnable(GL_SAMPLE_ALPHA_TO_COVERAGE) glEnable(GL_DEPTH_TEST); glEnable(GL_STENCIL_TEST); glPolygonOffset() glBlend*() glColorMask() glCullFace() glDepthFunc() glDepthMask() glLineWidth() glStencilFunc() glStencilOp()

HDST_API HdStShaderCodeSharedPtrVector GetShaders ( ) const

returns shaders (lighting/renderpass)

HDST_API void Prepare ( HdResourceRegistrySharedPtr const &  resourceRegistry)
overridevirtual

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 from HdRenderPassState.

HD_API void SetCameraFramingState ( GfMatrix4d const &  worldToViewMatrix,
GfMatrix4d const &  projectionMatrix,
GfVec4d const &  viewport,
ClipPlanesVector const &  clipPlanes 
)

Camera setter API Option 1: Specify matrices, viewport and clipping planes (defined in camera space) directly.

HDST_API void SetLightingShader ( HdStLightingShaderSharedPtr const &  lightingShader)

Set lighting shader.

HDST_API void SetRenderPassShader ( HdStRenderPassShaderSharedPtr const &  renderPassShader)

renderpass shader

HD_API void SetResolveAovMultiSample ( bool  state)

If set to true (default) and the render pass is rendering into a multi-sampled aovs, the aovs will be resolved at the end of the render pass.

If false or the aov is not multi-sampled or the render pass is not rendering into the multi-sampled aov, no resolution takes place.

HDST_API void SetUseSceneMaterials ( bool  state)

scene materials


The documentation for this class was generated from the following file: