#include <renderDelegate.h>
Definition at line 92 of file renderDelegate.h.
virtual HD_API HdRenderDelegate::~HdRenderDelegate |
( |
| ) |
|
|
virtual |
HD_API HdRenderDelegate::HdRenderDelegate |
( |
| ) |
|
|
protected |
This class must be derived from.
Allow derived classes to pass construction-time render settings.
This class is not intended to be copied.
Sync, Execute & Dispatch Hooks Notification point from the Engine to the delegate. This notification occurs after all Sync's have completed and before task execution.
This notification gives the Render Delegate a chance to update and move memory that the render may need.
For example, the render delegate might fill primvar buffers or texture memory.
Implemented in HdStRenderDelegate, and Hd_UnitTestNullRenderDelegate.
Request to Allocate and Construct a new Bprim.
- Parameters
-
typeId | the type identifier of the prim to allocate |
sprimId | a unique identifier for the prim |
- Returns
- A pointer to the new prim or nullptr on error.
Implemented in HdStRenderDelegate, and Hd_UnitTestNullRenderDelegate.
Request to Allocate and Construct a Bprim to use as a standin, if there if an error with another another Bprim of the same type. For example, if another prim references a non-exisiting Bprim, the fallback could be used.
- Parameters
-
typeId | the type identifier of the prim to allocate |
- Returns
- A pointer to the new prim or nullptr on error.
Implemented in HdStRenderDelegate, and Hd_UnitTestNullRenderDelegate.
Request to Allocate and Construct an Sprim to use as a standin, if there if an error with another another Sprim of the same type. For example, if another prim references a non-exisiting Sprim, the fallback could be used.
- Parameters
-
typeId | the type identifier of the prim to allocate |
- Returns
- A pointer to the new prim or nullptr on error.
Implemented in HdStRenderDelegate, and Hd_UnitTestNullRenderDelegate.
Renderpass Factory Request to create a new renderpass.
- Parameters
-
index | the render index to bind to the new renderpass. |
collection | the rprim collection to bind to the new renderpass. |
- Returns
- A shared pointer to the new renderpass or empty on error.
Implemented in HdStRenderDelegate, and Hd_UnitTestNullRenderDelegate.
Request to create a new renderpass state. The default implementation creates an HdRenderPassState instance, but derived render delegates may instantiate their own state type.
- Parameters
-
shader | The render pass shader to use. If null, a new HdRenderPassShared will be created. |
- Returns
- A shared pointer to the new renderpass state.
Reimplemented in HdStRenderDelegate.
Prim Factories Request to Allocate and Construct a new Rprim.
- Parameters
-
typeId | the type identifier of the prim to allocate |
rprimId | a unique identifier for the prim |
- Returns
- A pointer to the new prim or nullptr on error.
Implemented in HdStRenderDelegate, and Hd_UnitTestNullRenderDelegate.
Request to Allocate and Construct a new Sprim.
- Parameters
-
typeId | the type identifier of the prim to allocate |
sprimId | a unique identifier for the prim |
- Returns
- A pointer to the new prim or nullptr on error.
Implemented in HdStRenderDelegate, and Hd_UnitTestNullRenderDelegate.
virtual void HdRenderDelegate::DestroyBprim |
( |
HdBprim * |
bprim | ) |
|
|
pure virtual |
virtual void HdRenderDelegate::DestroyRprim |
( |
HdRprim * |
rPrim | ) |
|
|
pure virtual |
virtual void HdRenderDelegate::DestroySprim |
( |
HdSprim * |
sprim | ) |
|
|
pure virtual |
AOVs Returns a default AOV descriptor for the given named AOV, specifying things like preferred format.
Reimplemented in HdStRenderDelegate.
virtual HD_API TfToken HdRenderDelegate::GetMaterialBindingPurpose |
( |
| ) |
const |
|
virtual |
Materials Returns a token that indicates material bindings should be used, based on the indicated purpose. The default purpose is HdTokens->preview.
virtual HD_API TfToken HdRenderDelegate::GetMaterialNetworkSelector |
( |
| ) |
const |
|
virtual |
Returns a list, in descending order of preference, that can be used to select among multiple material network implementations. The default list contains an empty token.
Reimplemented in HdStRenderDelegate.
Returns an opaque handle to a render param, that in turn is passed to each prim created by the render delegate during sync processing. This avoids the need to store a global state pointer in each prim.
The typical lifetime of the renderParam would match that of the RenderDelegate, however the minimal lifetime is that of the Sync processing. The param maybe queried multiple times during sync.
A render delegate may return null for the param.
Reimplemented in HdStRenderDelegate, and Hd_UnitTestNullRenderDelegate.
Get the current value for a render setting.
Get the current value for a render setting, taking a desired type and a fallback value in case of type mismatch.
Definition at line 163 of file renderDelegate.h.
Returns a list of namespace prefixes for render settings attributes relevant to a render delegate. This list is used to gather just the relevant attributes from render settings scene description. The default is an empty list, which will gather all custom (non-schema) attributes.
virtual HD_API unsigned int HdRenderDelegate::GetRenderSettingsVersion |
( |
| ) |
const |
|
virtual |
Get the current version of the render settings dictionary.
Returns an open-format dictionary of render statistics
Reimplemented in HdStRenderDelegate.
Returns the ordered list of shader source types that the render delegate supports.
Reimplemented in HdStRenderDelegate.
Invokes the command described by the token command
with optional args
.
If the command succeeds, returns true
, otherwise returns false
. A command will generally fail if it is not among those returned by GetCommandDescriptors().
Reimplemented in Hd_UnitTestNullRenderDelegate.
virtual HD_API bool HdRenderDelegate::IsPaused |
( |
| ) |
const |
|
virtual |
Query the delegate's pause state. Returns true if the background rendering threads are currently paused.
virtual HD_API bool HdRenderDelegate::IsPauseSupported |
( |
| ) |
const |
|
virtual |
Control of background rendering threads. Advertise whether this delegate supports pausing and resuming of background render threads. Default implementation returns false.
virtual HD_API bool HdRenderDelegate::IsPrimvarFilteringNeeded |
( |
| ) |
const |
|
virtual |
Return true to indicate that the render delegate wants rprim primvars to be filtered by the scene delegate to reduce the amount of primvars that are send to the render delegate. For example the scene delegate may check the bound material primvar requirements and send only those to the render delegate. Return false to not apply primvar filtering in the scene delegate. Defaults to false.
Reimplemented in HdStRenderDelegate.
virtual HD_API bool HdRenderDelegate::IsStopped |
( |
| ) |
const |
|
virtual |
Query the delegate's stop state. Returns true if the background rendering threads are not currently active.
virtual HD_API bool HdRenderDelegate::IsStopSupported |
( |
| ) |
const |
|
virtual |
Advertise whether this delegate supports stopping and restarting of background render threads. Default implementation returns false.
virtual HD_API bool HdRenderDelegate::Pause |
( |
| ) |
|
|
virtual |
Pause all of this delegate's background rendering threads. Default implementation does nothing.
Returns true
if successful.
virtual HD_API bool HdRenderDelegate::Restart |
( |
| ) |
|
|
virtual |
Restart all of this delegate's background rendering threads previously stopped by a call to Stop. Default implementation does nothing.
Returns true
if successful.
virtual HD_API bool HdRenderDelegate::Resume |
( |
| ) |
|
|
virtual |
Resume all of this delegate's background rendering threads previously paused by a call to Pause. Default implementation does nothing.
Returns true
if successful.
Set list of driver objects, such as a rendering context / devices. This is automatically called from HdRenderIndex when a HdDriver is provided during its construction. Default implementation does nothing.
Reimplemented in HdStRenderDelegate.
Set a custom render setting on this render delegate.
virtual HD_API bool HdRenderDelegate::Stop |
( |
bool |
blocking = true | ) |
|
|
virtual |
Stop all of this delegate's background rendering threads; if blocking is true, the function waits until they exit. Default implementation does nothing.
Returns true
if successfully stopped.
unsigned int HdRenderDelegate::_settingsVersion |
|
protected |
The documentation for this class was generated from the following file: