24 #ifndef PXR_IMAGING_HD_ST_COMMAND_BUFFER_H
25 #define PXR_IMAGING_HD_ST_COMMAND_BUFFER_H
47 std::shared_ptr<class HdStResourceRegistry>;
89 unsigned currentBatchVersion);
103 return _drawItems.size() - _visibleSize;
110 void _RebuildDrawBatches();
112 std::vector<HdStDrawItem const*> _drawItems;
113 std::vector<HdStDrawItemInstance> _drawItemInstances;
116 unsigned int _visChangeCount;
117 unsigned int _drawBatchesVersion;
123 #endif //PXR_IMAGING_HD_ST_COMMAND_BUFFER_H
HDST_API void ExecuteDraw(HdStRenderPassStateSharedPtr const &renderPassState, HdStResourceRegistrySharedPtr const &resourceRegistry)
Execute the command buffer.
HDST_API void SwapDrawItems(std::vector< HdStDrawItem const * > *items, unsigned currentBatchVersion)
std::shared_ptr< class HdStRenderPassState > HdStRenderPassStateSharedPtr
HDST_API void RebuildDrawBatchesIfNeeded(unsigned currentBatchVersion)
Rebuild all draw batches if any underlying buffer array is invalidated.
HDST_API void PrepareDraw(HdStRenderPassStateSharedPtr const &renderPassState, HdStResourceRegistrySharedPtr const &resourceRegistry)
Prepare the command buffer for draw.
HDST_API HdStCommandBuffer()
HDST_API void SyncDrawItemVisibility(unsigned visChangeCount)
Sync visibility state from RprimSharedState to DrawItemInstances.
size_t GetTotalSize() const
Returns the total number of draw items, including culled items.
HDST_API void FrustumCull(GfMatrix4d const &cullMatrix)
Cull drawItemInstances based on passed in combined view and projection matrix.
size_t GetVisibleSize() const
Returns the number of draw items, excluding culled items.
HDST_API void SetEnableTinyPrimCulling(bool tinyPrimCulling)
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
size_t GetCulledSize() const
Returns the number of culled draw items.
std::vector< HdSt_DrawBatchSharedPtr > HdSt_DrawBatchSharedPtrVector
HDST_API ~HdStCommandBuffer()
#define PXR_NAMESPACE_CLOSE_SCOPE
std::shared_ptr< class HdStResourceRegistry > HdStResourceRegistrySharedPtr
std::shared_ptr< class HdSt_DrawBatch > HdSt_DrawBatchSharedPtr