7#ifndef HDX_BOUNDINGBOX_TASK_H
8#define HDX_BOUNDINGBOX_TASK_H
14#include "pxr/imaging/hdx/api.h"
15#include "pxr/imaging/hdx/task.h"
16#include "pxr/imaging/hdx/tokens.h"
18#include "pxr/imaging/hd/camera.h"
20#include "pxr/imaging/hgi/attachmentDesc.h"
21#include "pxr/imaging/hgi/buffer.h"
22#include "pxr/imaging/hgi/graphicsCmds.h"
23#include "pxr/imaging/hgi/graphicsPipeline.h"
24#include "pxr/imaging/hgi/resourceBindings.h"
25#include "pxr/imaging/hgi/shaderProgram.h"
26#include "pxr/imaging/hgi/texture.h"
28#include "pxr/usd/sdf/path.h"
30PXR_NAMESPACE_OPEN_SCOPE
40 using BBoxVector = std::vector<GfBBox3d>;
80 void Execute(HdTaskContext* ctx)
override;
87 HdDirtyBits* dirtyBits)
override;
95 bool _CreateShaderResources();
98 bool _CreateBufferResources();
101 bool _CreateResourceBindings();
104 bool _CreatePipeline(
113 void _UpdateShaderConstants(
125 void _DestroyShaderProgram();
128 void _PrintCompileErrors();
134 size_t _maxTransforms;
153PXR_NAMESPACE_CLOSE_SCOPE
Stores a 4x4 matrix of double elements.
Basic type for a vector of 4 float components.
Basic type for a vector of 4 int components.
The Hydra render index is a flattened representation of the client scene graph, which may be composed...
Adapter class providing data exchange with the client scene graph.
A set of rendering parameters used among render passes.
A task for rendering bounding boxes.
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 bounding box task resources.
HDX_API void Execute(HdTaskContext *ctx) override
Execute the bounding box task.
Base class for (some) tasks in Hdx that provides common progressive rendering and Hgi functionality.
A graphics API independent abstraction of graphics commands.
A path value used to locate objects in layers or scenegraphs.
Token for efficient comparison, assignment, and hashing of known strings.
GF_API std::ostream & operator<<(std::ostream &, const GfBBox3d &)
Output a GfBBox3d using the format [(range) matrix zeroArea].
BoundingBoxTask parameters.
Describes the properties of a framebuffer attachment.