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 render index is part of the Hydra 1.0 API and is only used for emulation purposes so that HdScene...
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.