All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
context.h
1//
2// Copyright 2016 Pixar
3//
4// Licensed under the terms set forth in the LICENSE.txt file available at
5// https://openusd.org/license.
6//
7#ifndef PXR_IMAGING_PLUGIN_HD_EMBREE_CONTEXT_H
8#define PXR_IMAGING_PLUGIN_HD_EMBREE_CONTEXT_H
9
10#include "pxr/pxr.h"
11
12#include "pxr/imaging/plugin/hdEmbree/sampler.h"
13
15#include "pxr/base/vt/array.h"
16
17#include <embree3/rtcore.h>
18
19PXR_NAMESPACE_OPEN_SCOPE
20
21class HdRprim;
22
29{
33 TfHashMap<TfToken, HdEmbreePrimvarSampler*, TfToken::HashFunctor>
36 VtIntArray primitiveParams;
37};
38
46{
51 RTCScene rootScene;
53 int32_t instanceId;
54};
55
56
57PXR_NAMESPACE_CLOSE_SCOPE
58
59#endif // PXR_IMAGING_PLUGIN_HD_EMBREE_CONTEXT_H
Stores a 4x4 matrix of float elements.
Definition: matrix4f.h:71
The render engine state for a given rprim from the scene graph.
Definition: rprim.h:38
A small bit of state attached to each bit of instanced geometry in embree, for the benefit of HdEmbre...
Definition: context.h:46
int32_t instanceId
The instance id of this instance.
Definition: context.h:53
RTCScene rootScene
The scene the prototype geometry lives in, for passing to rtcInterpolate.
Definition: context.h:51
GfMatrix4f objectToWorldMatrix
The object-to-world transform, for transforming normals to worldspace.
Definition: context.h:48
A small bit of state attached to each bit of prototype geometry in embree, for the benefit of HdEmbre...
Definition: context.h:29
VtIntArray primitiveParams
A copy of the primitive params for this rprim.
Definition: context.h:36
TfHashMap< TfToken, HdEmbreePrimvarSampler *, TfToken::HashFunctor > primvarMap
A name-indexed map of primvar samplers.
Definition: context.h:34
HdRprim * rprim
A pointer back to the owning HdEmbree rprim.
Definition: context.h:31