6#ifndef PXR_IMAGING_HD_ST_RENDER_DELEGATE_H
7#define PXR_IMAGING_HD_ST_RENDER_DELEGATE_H
10#include "pxr/imaging/hdSt/api.h"
11#include "pxr/imaging/hd/renderDelegate.h"
16PXR_NAMESPACE_OPEN_SCOPE
20using HdStDrawItemsCacheUniquePtr =
21 std::unique_ptr<class HdSt_DrawItemsCache>;
22using HdStDrawItemsCachePtr = HdSt_DrawItemsCache *;
24using HdStResourceRegistrySharedPtr =
25 std::shared_ptr<class HdStResourceRegistry>;
27struct HdRenderDelegateInfo;
52 void SetDrivers(HdDriverVector
const& drivers)
override;
64 HdResourceRegistrySharedPtr GetResourceRegistry()
const override;
70 HdRenderPassStateSharedPtr CreateRenderPassState()
const override;
77 void DestroyInstancer(
HdInstancer *instancer)
override;
81 SdfPath const& rprimId)
override;
83 void DestroyRprim(
HdRprim *rPrim)
override;
87 SdfPath const& sprimId)
override;
91 void DestroySprim(
HdSprim *sPrim)
override;
95 SdfPath const& bprimId)
override;
99 void DestroyBprim(
HdBprim *bPrim)
override;
111 bool IsPrimvarFilteringNeeded()
const override;
114 HdRenderSettingDescriptorList
115 GetRenderSettingDescriptors()
const override;
122 GetDefaultAovDescriptor(
TfToken const& name)
const override;
139 static bool IsSupported(
145 HdStDrawItemsCachePtr GetDrawItemsCache()
const;
153 const HdRenderDelegateInfo &GetRenderDelegateInfo();
156 void _ApplyTextureSettings();
157 HdSprim *_CreateFallbackMaterialPrim();
166 HdStResourceRegistrySharedPtr _resourceRegistry;
168 HdRenderSettingDescriptorList _settingDescriptors;
172 std::unique_ptr<HdStRenderParam> _renderParam;
174 HdStDrawItemsCacheUniquePtr _drawItemsCache;
178PXR_NAMESPACE_CLOSE_SCOPE
Bprim (buffer prim) is a base class of managing a blob of data that is used to communicate between th...
Tracks changes from the HdSceneDelegate, providing invalidation cues to the render engine.
This class exists to facilitate point cloud style instancing.
The Hydra render index is a flattened representation of the client scene graph, which may be composed...
The HdRenderParam is an opaque (to core Hydra) handle, to an object that is obtained from the render ...
A named, semantic collection of objects.
The render engine state for a given rprim from the scene graph.
Adapter class providing data exchange with the client scene graph.
Sprim (state prim) is a base class of managing state for non-drawable scene entity (e....
HDST_API bool RequiresStormTasks() const override
Flag for the HdxTaskControllerSceneIndex.
The render delegate can create an object of type HdRenderParam, to pass to each prim during Sync().
Hydra Graphics Interface.
A path value used to locate objects in layers or scenegraphs.
Token for efficient comparison, assignment, and hashing of known strings.
A map with string keys and VtValue values.
A bundle of state describing an AOV ("Arbitrary Output Variable") display channel.
HdRendererCreateArgs contains members indicating the resources available when creating a renderer plu...
std::vector< TfToken > TfTokenVector
Convenience types.