27#ifndef PXR_USD_IMAGING_USD_IMAGING_GL_RENDER_PARAMS_H
28#define PXR_USD_IMAGING_USD_IMAGING_GL_RENDER_PARAMS_H
31#include "pxr/usdImaging/usdImagingGL/api.h"
33#include "pxr/usd/usd/timeCode.h"
41PXR_NAMESPACE_OPEN_SCOPE
43enum class UsdImagingGLDrawMode
47 DRAW_WIREFRAME_ON_SURFACE,
57enum class UsdImagingGLCullStyle
59 CULL_STYLE_NO_OPINION,
63 CULL_STYLE_BACK_UNLESS_DOUBLE_SIDED,
77 using ClipPlanesVector = std::vector<GfVec4d>;
78 using BBoxVector = std::vector<GfBBox3d>;
82 UsdImagingGLDrawMode drawMode;
88 UsdImagingGLCullStyle cullStyle;
91 bool enableSampleAlphaToCoverage;
92 bool applyRenderState;
93 bool gammaCorrectColors;
98 ClipPlanesVector clipPlanes;
99 bool enableSceneMaterials;
100 bool enableSceneLights;
102 bool enableUsdDrawModes;
114 float bboxLineDashSize;
121 return !(*
this == other);
126UsdImagingGLRenderParams::UsdImagingGLRenderParams() :
129 drawMode(UsdImagingGLDrawMode::DRAW_SHADED_SMOOTH),
134 flipFrontFacing(false),
135 cullStyle(UsdImagingGLCullStyle::CULL_STYLE_NOTHING),
136 enableIdRender(false),
137 enableLighting(true),
138 enableSampleAlphaToCoverage(false),
139 applyRenderState(true),
140 gammaCorrectColors(true),
142 overrideColor(.0f, .0f, .0f, .0f),
143 wireframeColor(.0f, .0f, .0f, .0f),
146 enableSceneMaterials(true),
147 enableSceneLights(true),
148 enableUsdDrawModes(true),
160 return frame == other.frame
161 && complexity == other.complexity
162 && drawMode == other.drawMode
163 && showGuides == other.showGuides
164 && showProxy == other.showProxy
165 && showRender == other.showRender
166 && forceRefresh == other.forceRefresh
167 && flipFrontFacing == other.flipFrontFacing
168 && cullStyle == other.cullStyle
169 && enableIdRender == other.enableIdRender
170 && enableLighting == other.enableLighting
171 && enableSampleAlphaToCoverage == other.enableSampleAlphaToCoverage
172 && applyRenderState == other.applyRenderState
173 && gammaCorrectColors == other.gammaCorrectColors
174 && highlight == other.highlight
175 && overrideColor == other.overrideColor
176 && wireframeColor == other.wireframeColor
177 && alphaThreshold == other.alphaThreshold
178 && clipPlanes == other.clipPlanes
179 && enableSceneMaterials == other.enableSceneMaterials
180 && enableSceneLights == other.enableSceneLights
181 && enableUsdDrawModes == other.enableUsdDrawModes
182 && clearColor == other.clearColor
183 && colorCorrectionMode == other.colorCorrectionMode
184 && ocioDisplay == other.ocioDisplay
185 && ocioView == other.ocioView
186 && ocioColorSpace == other.ocioColorSpace
187 && ocioLook == other.ocioLook
188 && lut3dSizeOCIO == other.lut3dSizeOCIO
189 && bboxes == other.bboxes
190 && bboxLineColor == other.bboxLineColor
191 && bboxLineDashSize == other.bboxLineDashSize;
194PXR_NAMESPACE_CLOSE_SCOPE
Basic type for a vector of 4 float components.
Token for efficient comparison, assignment, and hashing of known strings.
Used as an arguments class for various methods in UsdImagingGLEngine.
Represent a time value, which may be either numeric, holding a double value, or a sentinel value UsdT...
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...