#include <SuperResolution.h>
Public Member Functions | |
| virtual const SuperResolutionDesc &DILIGENT_CALL_TYPE | GetDesc () const =0 |
| Returns the super resolution description used to create the object. | |
| virtual void DILIGENT_CALL_TYPE | GetJitterOffset (Uint32 Index, float &JitterX, float &JitterY) const =0 |
| Returns the optimal jitter offset for the given frame index. | |
| virtual void DILIGENT_CALL_TYPE | Execute (const ExecuteSuperResolutionAttribs &Attribs)=0 |
| Executes the super resolution upscaler. | |
Public Member Functions inherited from Diligent.IObject | |
| virtual void DILIGENT_CALL_TYPE | QueryInterface (const INTERFACE_ID &IID, IObject **ppInterface)=0 |
| Queries the specific interface. | |
| template<typename DerivedType, typename = typename std::enable_if<std::is_base_of<IObject, DerivedType>::value>::type> | |
| void | QueryInterface (const INTERFACE_ID &IID, DerivedType **ppInterface) |
| virtual ReferenceCounterValueType DILIGENT_CALL_TYPE | AddRef ()=0 |
| Increments the number of strong references by 1. | |
| virtual ReferenceCounterValueType DILIGENT_CALL_TYPE | Release ()=0 |
| virtual IReferenceCounters *DILIGENT_CALL_TYPE | GetReferenceCounters () const =0 |
Super resolution upscaler interface.
The super resolution object encapsulates a hardware-accelerated or software-based super resolution effect (e.g., MetalFX on Metal, DirectSR on D3D12). It is created via ISuperResolutionFactory::CreateSuperResolution().
|
pure virtual |
Executes the super resolution upscaler.
| [in] | Attribs | - Upscale operation attributes, see Diligent::ExecuteSuperResolutionAttribs. |
The command must be called outside of a render pass. All input textures must be in the appropriate states or StateTransitionMode should be set to RESOURCE_STATE_TRANSITION_MODE_TRANSITION.
|
pure virtual |
Returns the optimal jitter offset for the given frame index.
| [in] | Index | - Frame index. The sequence wraps automatically. |
| [out] | JitterX | - Jitter offset X in pixel space, typically in [-0.5, 0.5] range. |
| [out] | JitterY | - Jitter offset Y in pixel space, typically in [-0.5, 0.5] range. |
For temporal upscaling, the upscaler provides a recommended jitter pattern (e.g. Halton sequence) that should be applied to the projection matrix each frame. For spatial upscaling, both values are set to zero.