|
|
|
@ -97,14 +97,19 @@ RendererVulkan::RendererVulkan(Core::TelemetrySession& telemetry_session_,
|
|
|
|
|
Core::Frontend::EmuWindow& emu_window,
|
|
|
|
|
Core::Memory::Memory& cpu_memory_, Tegra::GPU& gpu_,
|
|
|
|
|
std::unique_ptr<Core::Frontend::GraphicsContext> context_) try
|
|
|
|
|
: RendererBase(emu_window, std::move(context_)), telemetry_session(telemetry_session_),
|
|
|
|
|
cpu_memory(cpu_memory_), gpu(gpu_), library(OpenLibrary()),
|
|
|
|
|
: RendererBase(emu_window, std::move(context_)),
|
|
|
|
|
telemetry_session(telemetry_session_),
|
|
|
|
|
cpu_memory(cpu_memory_),
|
|
|
|
|
gpu(gpu_),
|
|
|
|
|
library(OpenLibrary()),
|
|
|
|
|
instance(CreateInstance(library, dld, VK_API_VERSION_1_1, render_window.GetWindowInfo().type,
|
|
|
|
|
true, Settings::values.renderer_debug.GetValue())),
|
|
|
|
|
debug_callback(Settings::values.renderer_debug ? CreateDebugCallback(instance) : nullptr),
|
|
|
|
|
surface(CreateSurface(instance, render_window)),
|
|
|
|
|
device(CreateDevice(instance, dld, *surface)), memory_allocator(device, false),
|
|
|
|
|
state_tracker(gpu), scheduler(device, state_tracker),
|
|
|
|
|
device(CreateDevice(instance, dld, *surface)),
|
|
|
|
|
memory_allocator(device, false),
|
|
|
|
|
state_tracker(gpu),
|
|
|
|
|
scheduler(device, state_tracker),
|
|
|
|
|
swapchain(*surface, device, scheduler, render_window.GetFramebufferLayout().width,
|
|
|
|
|
render_window.GetFramebufferLayout().height, false),
|
|
|
|
|
blit_screen(cpu_memory, render_window, device, memory_allocator, swapchain, scheduler,
|
|
|
|
|