HDK
|
#include <visualizeAovTask.h>
Public Member Functions | |
HDX_API | HdxVisualizeAovTask (HdSceneDelegate *delegate, SdfPath const &id) |
HDX_API | ~HdxVisualizeAovTask () override |
HDX_API void | Prepare (HdTaskContext *ctx, HdRenderIndex *renderIndex) override |
HDX_API void | Execute (HdTaskContext *ctx) override |
Public Member Functions inherited from HdxTask | |
HDX_API | HdxTask (SdfPath const &id) |
HDX_API | ~HdxTask () override |
virtual HDX_API bool | IsConverged () const |
HDX_API void | Sync (HdSceneDelegate *delegate, HdTaskContext *ctx, HdDirtyBits *dirtyBits) overridefinal |
Public Member Functions inherited from HdTask | |
HD_API | HdTask (SdfPath const &id) |
virtual HD_API | ~HdTask () |
virtual HD_API const TfTokenVector & | GetRenderTags () const |
SdfPath const & | GetId () const |
virtual HD_API HdDirtyBits | GetInitialDirtyBitsMask () const |
Protected Member Functions | |
HDX_API void | _Sync (HdSceneDelegate *delegate, HdTaskContext *ctx, HdDirtyBits *dirtyBits) override |
Protected Member Functions inherited from HdxTask | |
HDX_API void | _ToggleRenderTarget (HdTaskContext *ctx) |
HDX_API void | _ToggleDepthTarget (HdTaskContext *ctx) |
HDX_API void | _SwapTextures (HdTaskContext *ctx, const TfToken &textureToken, const TfToken &textureIntermediateToken) |
HDX_API Hgi * | _GetHgi () const |
Protected Member Functions inherited from HdTask | |
template<class T > | |
bool | _GetTaskParams (HdSceneDelegate *delegate, T *outValue) |
HD_API TfTokenVector | _GetTaskRenderTags (HdSceneDelegate *delegate) |
Additional Inherited Members | |
Static Protected Member Functions inherited from HdTask | |
static HD_API bool | _HasTaskContextData (HdTaskContext const *ctx, TfToken const &id) |
Check if the shared context contains a value for the given id. More... | |
template<class T > | |
static bool | _GetTaskContextData (HdTaskContext const *ctx, TfToken const &id, T *outValue) |
template<class T > | |
static T | _GetDriver (HdTaskContext const *ctx, TfToken const &driverName) |
A task for visualizing non-color AOVs such as depth, normals, primId.
Different kernels are used depending on the AOV: Depth: Renormalized from the range [0.0, 1.0] to [min, max] depth to provide better contrast. Normals: Transform each component from [-1.0, 1.0] tp [0.0, 1.0] so that negative components don't appear black. Ids: Integer ids are colorized by multiplying by a large prime and shuffling resulting bits so that neighboring ids are easily distinguishable. Other Aovs: A fallback kernel that transfers the AOV contents into a float texture is used.
This task updates the 'color' entry of the task context with the colorized texture contents.
Definition at line 60 of file visualizeAovTask.h.
HDX_API HdxVisualizeAovTask::HdxVisualizeAovTask | ( | HdSceneDelegate * | delegate, |
SdfPath const & | id | ||
) |
|
override |
|
overrideprotectedvirtual |
Implements HdxTask.
|
overridevirtual |
|
overridevirtual |
Prepare Phase: Resolve bindings and manage resources.
The Prepare phase happens before the Data Commit phase. All tasks in the task list get called for every execute. At this time all Tasks and other prims have completed the phase synced.
This is an opportunity for the task to pull data from other prims (such as a camera prim) by querying the render index.
The task can also use the phase to create, register and update temporary resources with the resource registry or other render delegate specific mechanism.
Tasks are always "Prepared" in execution order.
Inter-task communication is achievable via the task context. The same task context is used for the prepare and execution phases. Data in the task context isn't guaranteed to persist across calls to HdEngine::Execute().
Implements HdTask.