#include "fsr2.h"
#include "../storage_rd/material_storage.h"
#include "../uniform_set_cache_rd.h"
usingnamespaceRendererRD;
#ifndef _MSC_VER
#include <wchar.h>
#define wcscpy_s …
#endif
static RD::TextureType ffx_resource_type_to_rd_texture_type(FfxResourceType p_type) { … }
static FfxResourceType rd_texture_type_to_ffx_resource_type(RD::TextureType p_type) { … }
static RD::DataFormat ffx_surface_format_to_rd_format(FfxSurfaceFormat p_format) { … }
static FfxSurfaceFormat rd_format_to_ffx_surface_format(RD::DataFormat p_format) { … }
static uint32_t ffx_usage_to_rd_usage_flags(uint32_t p_flags) { … }
static FfxErrorCode create_backend_context_rd(FfxFsr2Interface *p_backend_interface, FfxDevice p_device) { … }
static FfxErrorCode get_device_capabilities_rd(FfxFsr2Interface *p_backend_interface, FfxDeviceCapabilities *p_out_device_capabilities, FfxDevice p_device) { … }
static FfxErrorCode destroy_backend_context_rd(FfxFsr2Interface *p_backend_interface) { … }
static FfxErrorCode create_resource_rd(FfxFsr2Interface *p_backend_interface, const FfxCreateResourceDescription *p_create_resource_description, FfxResourceInternal *p_out_resource) { … }
static FfxErrorCode register_resource_rd(FfxFsr2Interface *p_backend_interface, const FfxResource *p_in_resource, FfxResourceInternal *p_out_resource) { … }
static FfxErrorCode unregister_resources_rd(FfxFsr2Interface *p_backend_interface) { … }
static FfxResourceDescription get_resource_description_rd(FfxFsr2Interface *p_backend_interface, FfxResourceInternal p_resource) { … }
static FfxErrorCode destroy_resource_rd(FfxFsr2Interface *p_backend_interface, FfxResourceInternal p_resource) { … }
static FfxErrorCode create_pipeline_rd(FfxFsr2Interface *p_backend_interface, FfxFsr2Pass p_pass, const FfxPipelineDescription *p_pipeline_description, FfxPipelineState *p_out_pipeline) { … }
static FfxErrorCode destroy_pipeline_rd(FfxFsr2Interface *p_backend_interface, FfxPipelineState *p_pipeline) { … }
static FfxErrorCode schedule_gpu_job_rd(FfxFsr2Interface *p_backend_interface, const FfxGpuJobDescription *p_job) { … }
static FfxErrorCode execute_gpu_job_clear_float_rd(FSR2Context::Scratch &p_scratch, const FfxClearFloatJobDescription &p_job) { … }
static FfxErrorCode execute_gpu_job_copy_rd(FSR2Context::Scratch &p_scratch, const FfxCopyJobDescription &p_job) { … }
static FfxErrorCode execute_gpu_job_compute_rd(FSR2Context::Scratch &p_scratch, const FfxComputeJobDescription &p_job) { … }
static FfxErrorCode execute_gpu_jobs_rd(FfxFsr2Interface *p_backend_interface, FfxCommandList p_command_list) { … }
static FfxResource get_resource_rd(RID *p_rid, const wchar_t *p_name) { … }
FSR2Context::~FSR2Context() { … }
FSR2Effect::FSR2Effect() { … }
FSR2Effect::~FSR2Effect() { … }
FSR2Context *FSR2Effect::create_context(Size2i p_internal_size, Size2i p_target_size) { … }
void FSR2Effect::upscale(const Parameters &p_params) { … }