10#ifndef PXR_USD_IMAGING_USD_IMAGING_GL_RENDER_PARAMS_H
11#define PXR_USD_IMAGING_USD_IMAGING_GL_RENDER_PARAMS_H
14#include "pxr/usdImaging/usdImagingGL/api.h"
16#include "pxr/usd/usd/timeCode.h"
24PXR_NAMESPACE_OPEN_SCOPE
26enum class UsdImagingGLDrawMode
30 DRAW_WIREFRAME_ON_SURFACE,
40enum class UsdImagingGLCullStyle
42 CULL_STYLE_NO_OPINION,
46 CULL_STYLE_BACK_UNLESS_DOUBLE_SIDED,
60 using ClipPlanesVector = std::vector<GfVec4d>;
61 using BBoxVector = std::vector<GfBBox3d>;
65 UsdImagingGLDrawMode drawMode;
71 UsdImagingGLCullStyle cullStyle;
74 bool enableSampleAlphaToCoverage;
75 bool applyRenderState;
76 bool gammaCorrectColors;
81 ClipPlanesVector clipPlanes;
82 bool enableSceneMaterials;
83 bool enableSceneLights;
85 bool enableUsdDrawModes;
97 float bboxLineDashSize;
104 return !(*
this == other);
109UsdImagingGLRenderParams::UsdImagingGLRenderParams() :
112 drawMode(UsdImagingGLDrawMode::DRAW_SHADED_SMOOTH),
117 flipFrontFacing(false),
118 cullStyle(UsdImagingGLCullStyle::CULL_STYLE_NOTHING),
119 enableIdRender(false),
120 enableLighting(true),
121 enableSampleAlphaToCoverage(false),
122 applyRenderState(true),
123 gammaCorrectColors(true),
125 overrideColor(.0f, .0f, .0f, .0f),
126 wireframeColor(.0f, .0f, .0f, .0f),
129 enableSceneMaterials(true),
130 enableSceneLights(true),
131 enableUsdDrawModes(true),
143 return frame == other.frame
144 && complexity == other.complexity
145 && drawMode == other.drawMode
146 && showGuides == other.showGuides
147 && showProxy == other.showProxy
148 && showRender == other.showRender
149 && forceRefresh == other.forceRefresh
150 && flipFrontFacing == other.flipFrontFacing
151 && cullStyle == other.cullStyle
152 && enableIdRender == other.enableIdRender
153 && enableLighting == other.enableLighting
154 && enableSampleAlphaToCoverage == other.enableSampleAlphaToCoverage
155 && applyRenderState == other.applyRenderState
156 && gammaCorrectColors == other.gammaCorrectColors
157 && highlight == other.highlight
158 && overrideColor == other.overrideColor
159 && wireframeColor == other.wireframeColor
160 && alphaThreshold == other.alphaThreshold
161 && clipPlanes == other.clipPlanes
162 && enableSceneMaterials == other.enableSceneMaterials
163 && enableSceneLights == other.enableSceneLights
164 && enableUsdDrawModes == other.enableUsdDrawModes
165 && clearColor == other.clearColor
166 && colorCorrectionMode == other.colorCorrectionMode
167 && ocioDisplay == other.ocioDisplay
168 && ocioView == other.ocioView
169 && ocioColorSpace == other.ocioColorSpace
170 && ocioLook == other.ocioLook
171 && lut3dSizeOCIO == other.lut3dSizeOCIO
172 && bboxes == other.bboxes
173 && bboxLineColor == other.bboxLineColor
174 && bboxLineDashSize == other.bboxLineDashSize;
177PXR_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...