24 #ifndef PXR_IMAGING_HD_ST_RENDER_PASS_H
25 #define PXR_IMAGING_HD_ST_RENDER_PASS_H
28 #include "pxr/imaging/hdSt/api.h"
29 #include "pxr/imaging/hdSt/commandBuffer.h"
30 #include "pxr/imaging/hd/renderPass.h"
32 #include <unordered_map>
34 PXR_NAMESPACE_OPEN_SCOPE
47 virtual ~HdSt_RenderPass();
54 size_t GetDrawItemCount()
const;
60 virtual void _Execute(HdRenderPassStateSharedPtr
const &renderPassState,
70 void _FrustumCullCPU(HdStRenderPassStateSharedPtr
const &renderPassState);
76 int _lastSettingsVersion;
77 bool _useTinyPrimCulling;
83 int _collectionVersion;
86 int _renderTagVersion;
89 unsigned int _materialTagsVersion;
97 bool _collectionChanged;
100 HdRenderIndex::HdDrawItemPtrVector _drawItems;
101 size_t _drawItemCount;
102 bool _drawItemsChanged;
107 PXR_NAMESPACE_CLOSE_SCOPE
109 #endif // PXR_IMAGING_HD_ST_RENDER_PASS_H
virtual void _MarkCollectionDirty()
Optional API: let derived classes mark their collection tracking as dirty.
The Hydra render index is a flattened representation of the client scene graph, which may be composed...
A buffer of commands (HdStDrawItem or HdComputeItem objects) to be executed.
virtual void _Prepare(TfTokenVector const &renderTags)
Optional API: let derived classes prepare data.
An abstract class representing a single render iteration over a set of prims (the HdRprimCollection)...
virtual void _Execute(HdRenderPassStateSharedPtr const &renderPassState, TfTokenVector const &renderTags)=0
Virtual API: Execute the buckets corresponding to renderTags; renderTags.empty() implies execute ever...
std::vector< TfToken > TfTokenVector
Convenience types.
A named, semantic collection of objects.
Hydra Graphics Interface.