7#ifndef PXR_IMAGING_PLUGIN_HD_EMBREE_RENDER_PASS_H
8#define PXR_IMAGING_PLUGIN_HD_EMBREE_RENDER_PASS_H
12#include "pxr/imaging/hd/aov.h"
13#include "pxr/imaging/hd/renderPass.h"
14#include "pxr/imaging/hd/renderThread.h"
15#include "pxr/imaging/plugin/hdEmbree/renderer.h"
16#include "pxr/imaging/plugin/hdEmbree/renderBuffer.h"
23PXR_NAMESPACE_OPEN_SCOPE
45 std::atomic<int> *sceneVersion);
66 void _Execute(HdRenderPassStateSharedPtr
const& renderPassState,
80 std::atomic<int> *_sceneVersion;
83 int _lastSceneVersion;
86 int _lastSettingsVersion;
99 HdRenderPassAovBindingVector _aovBindings;
103 HdEmbreeRenderBuffer _colorBuffer;
104 HdEmbreeRenderBuffer _depthBuffer;
110PXR_NAMESPACE_CLOSE_SCOPE
Stores a 4x4 matrix of double elements.
A 2D rectangle with integer coordinates.
HdRenderPass represents a single render iteration, rendering a view of the scene (the HdRprimCollecti...
HdEmbreeRenderPass(HdRenderIndex *index, HdRprimCollection const &collection, HdRenderThread *renderThread, HdEmbreeRenderer *renderer, std::atomic< int > *sceneVersion)
Renderpass constructor.
void _MarkCollectionDirty() override
Update internal tracking to reflect a dirty collection.
bool IsConverged() const override
Determine whether the sample buffer has enough samples.
~HdEmbreeRenderPass() override
Renderpass destructor.
void _Execute(HdRenderPassStateSharedPtr const &renderPassState, TfTokenVector const &renderTags) override
Draw the scene with the bound renderpass state.
HdEmbreeRenderer implements a renderer on top of Embree's raycasting abilities.
The Hydra render index is a flattened representation of the client scene graph, which may be composed...
An abstract class representing a single render iteration over a set of prims (the HdRprimCollection),...
HdRenderThread is a utility that specific render delegates can choose to use depending on their needs...
A named, semantic collection of objects.
std::vector< TfToken > TfTokenVector
Convenience types.