7 #ifndef PXR_IMAGING_HD_ST_RENDER_PASS_STATE_H
8 #define PXR_IMAGING_HD_ST_RENDER_PASS_STATE_H
33 std::shared_ptr<class HdStRenderPassShader>;
35 std::shared_ptr<class HdSt_FallbackLightingShader>;
37 std::shared_ptr<class HdSt_GeometricShader>;
40 class HdSt_ResourceBinder;
100 return _lightingShader;
107 return _renderPassShader;
112 HdSt_ResourceBinder
const &binder,
122 return _useSceneMaterials;
181 bool firstDrawBatch)
const;
187 bool firstDrawBatch)
const;
207 bool _UseAlphaMask()
const;
208 unsigned int _GetFramebufferHeight()
const;
209 GfRange2f _ComputeFlippedFilmbackWindow()
const;
219 void _InitPrimitiveState(
223 bool firstDrawBatch)
const;
226 void _InitRasterizationState(
248 size_t _clipPlanesBufferSize;
249 float _alphaThresholdCurrent;
250 bool _resolveMultiSampleAov;
251 bool _useSceneMaterials;
256 #endif // PXR_IMAGING_HD_ST_RENDER_PASS_STATE_H
HDST_API ~HdStRenderPassState() override
HDST_API GfMatrix4d GetProjectionMatrix() const override
std::shared_ptr< class HdStShaderCode > HdStShaderCodeSharedPtr
HDST_API void SetUseSceneMaterials(bool state)
scene materials
HDST_API void SetLightingShader(HdStLightingShaderSharedPtr const &lightingShader)
Set lighting shader.
HDST_API void InitGraphicsPipelineDesc(HgiGraphicsPipelineDesc *pipeDesc, HdSt_GeometricShaderSharedPtr const &geometricShader, bool firstDrawBatch) const
std::shared_ptr< class HdResourceRegistry > HdResourceRegistrySharedPtr
std::shared_ptr< class HdStLightingShader > HdStLightingShaderSharedPtr
HDST_API void SetRenderPassShader(HdStRenderPassShaderSharedPtr const &renderPassShader)
renderpass shader
HDST_API size_t GetShaderHash() const
HDST_API void Unbind(HgiCapabilities const &hgiCapabilities)
std::shared_ptr< class HdSt_GeometricShader > HdSt_GeometricShaderSharedPtr
HdStLightingShaderSharedPtr const & GetLightingShader() const
std::shared_ptr< class HdSt_FallbackLightingShader > HdSt_FallbackLightingShaderSharedPtr
std::shared_ptr< class HdStRenderPassState > HdStRenderPassStateSharedPtr
HDST_API void ApplyStateFromCamera()
HDST_API void Bind(HgiCapabilities const &hgiCapabilities)
HDST_API HgiGraphicsCmdsDesc MakeGraphicsCmdsDesc(HdRenderIndex const *renderIndex) const
std::vector< GfVec4d > ClipPlanesVector
Sets the camera.
GfMatrix4d GetCullMatrix() const
HDST_API ClipPlanesVector const & GetClipPlanes() const override
HDST_API void SetCameraFramingState(GfMatrix4d const &worldToViewMatrix, GfMatrix4d const &projectionMatrix, GfVec4d const &viewport, ClipPlanesVector const &clipPlanes)
HDST_API bool GetResolveAovMultiSample() const
std::shared_ptr< class HdStRenderPassShader > HdStRenderPassShaderSharedPtr
HDST_API GfMatrix4d GetWorldToViewMatrix() const override
HDST_API HdStRenderPassState()
HDST_API GfVec4i ComputeViewport() const
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
HDST_API void Prepare(HdResourceRegistrySharedPtr const &resourceRegistry) override
HDST_API void SetResolveAovMultiSample(bool state)
std::vector< HdStShaderCodeSharedPtr > HdStShaderCodeSharedPtrVector
#define PXR_NAMESPACE_CLOSE_SCOPE
std::shared_ptr< HdBufferArrayRange > HdBufferArrayRangeSharedPtr
HDST_API uint64_t GetGraphicsPipelineHash(HdSt_GeometricShaderSharedPtr const &geometricShader, bool firstDrawBatch) const
Generates the hash for the settings used to init the graphics pipeline.
HDST_API void ApplyStateFromGeometricShader(HdSt_ResourceBinder const &binder, HdSt_GeometricShaderSharedPtr const &geometricShader)
bool GetUseSceneMaterials() const
HDST_API AxisAlignedAffineTransform ComputeImageToHorizontallyNormalizedFilmback() const
HdStRenderPassShaderSharedPtr const & GetRenderPassShader() const
HDST_API HdStShaderCodeSharedPtrVector GetShaders() const
returns shaders (lighting/renderpass)