Loading...
Searching...
No Matches
mesh.h
1//
2// Copyright 2019 Pixar
3//
4// Licensed under the terms set forth in the LICENSE.txt file available at
5// https://openusd.org/license.
6//
7#ifndef EXT_RMANPKG_25_0_PLUGIN_RENDERMAN_PLUGIN_HD_PRMAN_MESH_H
8#define EXT_RMANPKG_25_0_PLUGIN_RENDERMAN_PLUGIN_HD_PRMAN_MESH_H
9
10#include "pxr/pxr.h"
11#include "hdPrman/gprim.h"
12#include "pxr/imaging/hd/mesh.h"
13
14#include "Riley.h"
15
16PXR_NAMESPACE_OPEN_SCOPE
17
18class HdPrman_Mesh final : public HdPrman_Gprim<HdMesh>
19{
20public:
21 using BASE = HdPrman_Gprim<HdMesh>;
22
23 HF_MALLOC_TAG_NEW("new HdPrman_Mesh");
24
25 HdPrman_Mesh(SdfPath const& id, const bool isMeshLight);
26
27 HdDirtyBits GetInitialDirtyBitsMask() const override;
28
29protected:
30 RtPrimVarList
31 _ConvertGeometry(HdPrman_RenderParam *renderParam,
32 HdSceneDelegate *sceneDelegate,
33 const SdfPath &id,
34 RtUString *primType,
35 std::vector<HdGeomSubset> *geomSubsets) override;
36
37 bool _PrototypeOnly() override;
38
39
40private:
41 bool _isMeshLight;
42};
43
44PXR_NAMESPACE_CLOSE_SCOPE
45
46#endif // EXT_RMANPKG_25_0_PLUGIN_RENDERMAN_PLUGIN_HD_PRMAN_MESH_H
A mix-in template that adds shared gprim behavior to support various HdRprim types.
Definition: gprim.h:29
Adapter class providing data exchange with the client scene graph.
A path value used to locate objects in layers or scenegraphs.
Definition: path.h:274