HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
enums.h
Go to the documentation of this file.
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_HD_ENUMS_H
8 #define PXR_IMAGING_HD_ENUMS_H
9 
10 #include "pxr/pxr.h"
11 #include "pxr/imaging/hd/api.h"
12 
14 
15 /// \enum HdCompareFunction
16 ///
17 /// Abstraction of the Graphics compare functions.
18 ///
20 {
29 
31 };
32 
33 /// \enum HdStencilOp
34 ///
35 /// Abstraction of the Graphics stencil test operations.
36 ///
38 {
47 
49 };
50 
51 /// \enum HdBlendOp
52 ///
53 /// Abstraction of the Graphics blend operations.
54 ///
56 {
62 
64 };
65 
66 /// \enum HdBlendFactor
67 ///
68 /// Abstraction of the Graphics blend factors.
69 ///
71 {
91 
93 };
94 
95 /// \enum HdCullStyle
96 ///
97 /// Face culling options.
98 ///
99 /// DontCare indicates this prim doesn't determine what should be culled.
100 /// Any other CullStyle opinion will override this (such as from the viewer).
101 ///
102 /// BackUnlessDoubleSided and FrontUnlessDoubleSided will only cull back or
103 /// front faces if prim isn't marked as doubleSided.
104 ///
106 {
113 };
114 
115 /// Returns the opposite of the given cullstyle; backface culling becomes
116 /// frontface and vice versa.
117 HD_API
119 
121 {
124 };
125 
126 /// \enum HdMeshGeomStyle
127 ///
128 /// Hydra native geom styles.
129 ///
139 };
140 
146 };
147 
151 };
152 
153 ///
154 /// \enum HdInterpolation
155 ///
156 /// Enumerates Hydra's primvar interpolation modes.
157 ///
158 /// Constant: One value remains constant over the entire surface primitive.
159 ///
160 /// Uniform: One value remains constant for each uv patch segment of the
161 /// surface primitive.
162 ///
163 /// Varying: Four values are interpolated over each uv patch segment of
164 /// the surface. Bilinear interpolation is used for interpolation
165 /// between the four values.
166 ///
167 /// Vertex: Values are interpolated between each vertex in the surface
168 /// primitive. The basis function of the surface is used for
169 /// interpolation between vertices.
170 ///
171 /// Facevarying: For polygons and subdivision surfaces, four values are
172 /// interpolated over each face of the mesh. Bilinear interpolation
173 /// is used for interpolation between the four values.
174 ///
175 /// Instance: One value remains constant across each instance.
176 ///
178 {
185 
187 };
188 
189 /// \enum HdDepthPriority
190 /// Sets the priorities for a depth based operation
191 ///
192 /// <ul>
193 /// <li>HdDepthPriorityNearest Prioritize objects nearest to the camera</li>
194 /// <li>HdDepthPriorityFarthest Prioritize objects farthest from the camera</li>
195 /// </ul>
196 ///
198 {
201 
203 };
204 
206 
207 #endif // PXR_IMAGING_HD_ENUMS_H
HdCompareFunction
Definition: enums.h:19
HdCullStyle
Definition: enums.h:105
HdDepthPriority
Definition: enums.h:197
HdPolygonMode
Definition: enums.h:120
#define HD_API
Definition: api.h:23
HdBlendFactor
Definition: enums.h:70
HD_API HdCullStyle HdInvertCullStyle(HdCullStyle cs)
HdMeshGeomStyle
Definition: enums.h:130
HdStencilOp
Definition: enums.h:37
HdPointsGeomStyle
Definition: enums.h:148
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
Definition: path.h:1425
HdInterpolation
Definition: enums.h:177
HdBasisCurvesGeomStyle
Definition: enums.h:141
#define PXR_NAMESPACE_CLOSE_SCOPE
Definition: pxr.h:74
HdBlendOp
Definition: enums.h:55