Metal: Add MetalFX upscaling support
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
This commit is contained in:
@ -918,6 +918,8 @@ public:
|
||||
VIEWPORT_SCALING_3D_MODE_BILINEAR,
|
||||
VIEWPORT_SCALING_3D_MODE_FSR,
|
||||
VIEWPORT_SCALING_3D_MODE_FSR2,
|
||||
VIEWPORT_SCALING_3D_MODE_METALFX_SPATIAL,
|
||||
VIEWPORT_SCALING_3D_MODE_METALFX_TEMPORAL,
|
||||
VIEWPORT_SCALING_3D_MODE_MAX,
|
||||
VIEWPORT_SCALING_3D_MODE_OFF = 255, // for internal use only
|
||||
};
|
||||
@ -931,6 +933,22 @@ public:
|
||||
VIEWPORT_ANISOTROPY_MAX
|
||||
};
|
||||
|
||||
enum ViewportScaling3DType {
|
||||
VIEWPORT_SCALING_3D_TYPE_NONE,
|
||||
VIEWPORT_SCALING_3D_TYPE_TEMPORAL,
|
||||
VIEWPORT_SCALING_3D_TYPE_SPATIAL,
|
||||
VIEWPORT_SCALING_3D_TYPE_MAX,
|
||||
};
|
||||
|
||||
_ALWAYS_INLINE_ static ViewportScaling3DType scaling_3d_mode_type(ViewportScaling3DMode p_mode) {
|
||||
if (p_mode == VIEWPORT_SCALING_3D_MODE_BILINEAR || p_mode == VIEWPORT_SCALING_3D_MODE_FSR || p_mode == VIEWPORT_SCALING_3D_MODE_METALFX_SPATIAL) {
|
||||
return VIEWPORT_SCALING_3D_TYPE_SPATIAL;
|
||||
} else if (p_mode == VIEWPORT_SCALING_3D_MODE_FSR2 || p_mode == VIEWPORT_SCALING_3D_MODE_METALFX_TEMPORAL) {
|
||||
return VIEWPORT_SCALING_3D_TYPE_TEMPORAL;
|
||||
}
|
||||
return VIEWPORT_SCALING_3D_TYPE_NONE;
|
||||
}
|
||||
|
||||
virtual void viewport_set_use_xr(RID p_viewport, bool p_use_xr) = 0;
|
||||
virtual void viewport_set_size(RID p_viewport, int p_width, int p_height) = 0;
|
||||
virtual void viewport_set_active(RID p_viewport, bool p_active) = 0;
|
||||
|
||||
Reference in New Issue
Block a user