@@ -89,10 +89,14 @@ struct SuperResolutionDesc DILIGENT_DERIVE(DeviceObjectAttribs)
8989 /// Unlike the reactive mask which provides proportional control, this is a binary decision.
9090 TEXTURE_FORMAT IgnoreHistoryMaskFormat DEFAULT_INITIALIZER (TEX_FORMAT_UNKNOWN );
9191
92- /// When True, the upscaler automatically calculates exposure for each frame.
93- /// When auto exposure is enabled, the exposure texture in
94- /// ExecuteSuperResolutionAttribs is ignored.
95- Bool AutoExposureEnabled DEFAULT_INITIALIZER (True );
92+ /// Exposure scale texture format.
93+ /// Optional. When auto-exposure is disabled, specifies the format of the 1x1 exposure
94+ /// texture provided in ExecuteSuperResolutionAttribs::pExposureTextureSRV.
95+ TEXTURE_FORMAT ExposureFormat DEFAULT_INITIALIZER (TEX_FORMAT_UNKNOWN );
96+
97+ /// Engine creation flags controlling the super resolution upscaler behavior.
98+ /// See SUPER_RESOLUTION_CREATE_FLAGS.
99+ SUPER_RESOLUTION_CREATE_FLAGS Flags DEFAULT_INITIALIZER (SUPER_RESOLUTION_CREATE_FLAG_NONE );
96100};
97101typedef struct SuperResolutionDesc SuperResolutionDesc ;
98102
@@ -112,6 +116,16 @@ struct SuperResolutionSourceSettingsAttribs
112116 /// Target (output) texture height. Must be greater than zero.
113117 Uint32 OutputHeight DEFAULT_INITIALIZER (0 );
114118
119+ /// Output texture format.
120+ /// Some backends (e.g. DirectSR) may return different optimal input resolutions
121+ /// depending on the output format. When set to TEX_FORMAT_UNKNOWN, the backend will use a reasonable default.
122+ TEXTURE_FORMAT OutputFormat DEFAULT_INITIALIZER (TEX_FORMAT_UNKNOWN );
123+
124+ /// Engine creation flags controlling the super resolution upscaler behavior.
125+ /// These flags affect the optimal source resolution returned by the backend.
126+ /// Must match the flags that will be used when creating the upscaler.
127+ SUPER_RESOLUTION_CREATE_FLAGS Flags DEFAULT_INITIALIZER (SUPER_RESOLUTION_CREATE_FLAG_NONE );
128+
115129 /// Optimization type controlling the quality/performance trade-off.
116130 SUPER_RESOLUTION_OPTIMIZATION_TYPE OptimizationType DEFAULT_INITIALIZER (SUPER_RESOLUTION_OPTIMIZATION_TYPE_BALANCED );
117131};
@@ -150,12 +164,12 @@ struct ExecuteSuperResolutionAttribs
150164
151165 /// Output (upscaled) texture (unordered access view or render target view).
152166 /// Must match SuperResolutionDesc::OutputWidth x OutputHeight.
153- ITextureView * pOutputTextureRTV DEFAULT_INITIALIZER (nullptr );
167+ ITextureView * pOutputTextureView DEFAULT_INITIALIZER (nullptr );
154168
155169 /// Exposure texture (shader resource view).
156170 /// Optional. A 1x1 R16_FLOAT texture containing the exposure value.
157171 /// The upscaler reads the R channel and uses it to multiply the input color.
158- /// Ignored when SuperResolutionDesc::AutoExposureEnabled is True .
172+ /// Ignored when SuperResolutionDesc::Flags includes SUPER_RESOLUTION_CREATE_FLAG_AUTO_EXPOSURE .
159173 ITextureView * pExposureTextureSRV DEFAULT_INITIALIZER (nullptr );
160174
161175 /// Reactive mask texture (shader resource view).
0 commit comments