9 #include <pxr/imaging/hd/renderDelegate.h>
10 #include <pxr/imaging/hgi/hgi.h>
15 #define HD_CYCLES_RENDER_SETTINGS_TOKENS \
16 (stageMetersPerUnit) \
17 ((device, "cycles:device")) \
18 ((threads, "cycles:threads")) \
19 ((timeLimit, "cycles:time_limit")) \
20 ((samples, "cycles:samples")) \
21 ((sampleOffset, "cycles:sample_offset"))
29 CCL_NS::Session *session_ =
nullptr,
30 const bool keep_nodes =
false);
33 void SetDrivers(
const PXR_NS::HdDriverVector &drivers)
override;
54 bool Pause()
override;
58 PXR_NS::HdRenderIndex *index,
const PXR_NS::HdRprimCollection &collection)
override;
61 const PXR_NS::SdfPath &
id
62 #
if PXR_VERSION < 2102
64 const PXR_NS::SdfPath &instancerId
69 PXR_NS::HdRprim *
CreateRprim(
const PXR_NS::TfToken &typeId,
70 const PXR_NS::SdfPath &rprimId
71 #
if PXR_VERSION < 2102
73 const PXR_NS::SdfPath &instancerId
78 PXR_NS::HdSprim *
CreateSprim(
const PXR_NS::TfToken &typeId,
79 const PXR_NS::SdfPath &sprimId)
override;
83 PXR_NS::HdBprim *
CreateBprim(
const PXR_NS::TfToken &typeId,
84 const PXR_NS::SdfPath &bprimId)
override;
92 #if HD_API_VERSION < 41
95 PXR_NS::TfTokenVector GetMaterialRenderContexts()
const override;
102 void SetRenderSetting(
const PXR_NS::TfToken &key,
const PXR_NS::VtValue &value)
override;
104 PXR_NS::VtValue
GetRenderSetting(
const PXR_NS::TfToken &key)
const override;
107 PXR_NS::Hgi *_hgi =
nullptr;
108 std::unique_ptr<HdCyclesSession> _renderParam;
bool IsPauseSupported() const override
PXR_NS::HdBprim * CreateFallbackBprim(const PXR_NS::TfToken &typeId) override
~HdCyclesDelegate() override
void SetRenderSetting(const PXR_NS::TfToken &key, const PXR_NS::VtValue &value) override
PXR_NS::Hgi * GetHgi() const
void DestroyRprim(PXR_NS::HdRprim *rPrim) override
const PXR_NS::TfTokenVector & GetSupportedSprimTypes() const override
PXR_NS::HdRenderParam * GetRenderParam() const override
PXR_NS::HdRenderPassSharedPtr CreateRenderPass(PXR_NS::HdRenderIndex *index, const PXR_NS::HdRprimCollection &collection) override
PXR_NS::HdSprim * CreateFallbackSprim(const PXR_NS::TfToken &typeId) override
PXR_NS::TfToken GetMaterialNetworkSelector() const override
PXR_NS::HdResourceRegistrySharedPtr GetResourceRegistry() const override
PXR_NS::HdInstancer * CreateInstancer(PXR_NS::HdSceneDelegate *delegate, const PXR_NS::SdfPath &id, const PXR_NS::SdfPath &instancerId) override
void DestroySprim(PXR_NS::HdSprim *sPrim) override
void CommitResources(PXR_NS::HdChangeTracker *tracker) override
const PXR_NS::TfTokenVector & GetSupportedBprimTypes() const override
const PXR_NS::TfTokenVector & GetSupportedRprimTypes() const override
HdCyclesDelegate(const PXR_NS::HdRenderSettingsMap &settingsMap, CCL_NS::Session *session_=nullptr, const bool keep_nodes=false)
PXR_NS::HdRprim * CreateRprim(const PXR_NS::TfToken &typeId, const PXR_NS::SdfPath &rprimId, const PXR_NS::SdfPath &instancerId) override
PXR_NS::HdAovDescriptor GetDefaultAovDescriptor(const PXR_NS::TfToken &name) const override
PXR_NS::HdSprim * CreateSprim(const PXR_NS::TfToken &typeId, const PXR_NS::SdfPath &sprimId) override
PXR_NS::VtValue GetRenderSetting(const PXR_NS::TfToken &key) const override
void SetDrivers(const PXR_NS::HdDriverVector &drivers) override
bool IsDisplaySupported() const
PXR_NS::HdRenderSettingDescriptorList GetRenderSettingDescriptors() const override
PXR_NS::TfToken GetMaterialBindingPurpose() const override
void DestroyBprim(PXR_NS::HdBprim *bPrim) override
PXR_NS::VtDictionary GetRenderStats() const override
void DestroyInstancer(PXR_NS::HdInstancer *instancer) override
PXR_NS::HdBprim * CreateBprim(const PXR_NS::TfToken &typeId, const PXR_NS::SdfPath &bprimId) override
#define HDCYCLES_NAMESPACE_CLOSE_SCOPE
#define HD_CYCLES_RENDER_SETTINGS_TOKENS
TF_DECLARE_PUBLIC_TOKENS(HdCyclesRenderSettingsTokens, HD_CYCLES_RENDER_SETTINGS_TOKENS)