|
A task for running picking queries against the current scene. More...
#include <pickTask.h>
Inherits HdTask.
Public Member Functions | |
HDX_API | HdxPickTask (HdSceneDelegate *delegate, SdfPath const &id) |
HDX_API void | Sync (HdSceneDelegate *delegate, HdTaskContext *ctx, HdDirtyBits *dirtyBits) override |
Sync the render pass resources. | |
HDX_API void | Prepare (HdTaskContext *ctx, HdRenderIndex *renderIndex) override |
Prepare the pick task. | |
HDX_API void | Execute (HdTaskContext *ctx) override |
Execute the pick task. | |
HDX_API const TfTokenVector & | GetRenderTags () const override |
Static Public Member Functions | |
static int | DecodeIDRenderColor (unsigned char const idColor[4]) |
Utility: Given a UNorm8Vec4 pixel, unpack it into an int32 ID. | |
A task for running picking queries against the current scene.
This task generates an id buffer for a "pick frustum" (normally the camera frustum with the near plane narrowed to an (x,y) location and a pick radius); then it resolves that id buffer into a series of prim paths. The "Hit" output also contains subprim picking results (e.g. picked face, edge, point, instance) and the intersection point in scene worldspace.
HdxPickTask takes an HdxPickTaskParams through the scene delegate, and HdxPickTaskContextParams through the task context as "pickParams". It produces a hit vector, in the task context as "pickHits".
Definition at line 275 of file pickTask.h.
|
inlinestatic |
Utility: Given a UNorm8Vec4 pixel, unpack it into an int32 ID.
Definition at line 303 of file pickTask.h.
|
override |
Execute the pick task.
|
override |
Prepare the pick task.
|
override |
Sync the render pass resources.