Add vulkan GS backend to project

This commit is contained in:
kd-11 2016-02-21 18:49:27 +03:00
parent 4c133ab5bf
commit d287ba44ce
3 changed files with 11 additions and 2 deletions

View File

@ -36,7 +36,8 @@ enum class frame_type
{
Null,
OpenGL,
DX12
DX12,
Vulkan
};
class GSRender : public rsx::thread

View File

@ -50,7 +50,8 @@ enum class rsx_renderer_type
{
Null,
OpenGL,
DX12
DX12,
Vulkan
};
enum class rsx_aspect_ratio
@ -93,6 +94,7 @@ namespace convert
case rsx_renderer_type::Null: return "Null";
case rsx_renderer_type::OpenGL: return "OpenGL";
case rsx_renderer_type::DX12: return "DX12";
case rsx_renderer_type::Vulkan: return "Vulkan";
}
return "Unknown";
@ -113,6 +115,9 @@ namespace convert
if (value == "DX12")
return rsx_renderer_type::DX12;
if (value == "Vulkan")
return rsx_renderer_type::Vulkan;
return rsx_renderer_type::Null;
}
};

View File

@ -32,6 +32,7 @@
#include "Emu/RSX/Null/NullGSRender.h"
#include "Emu/RSX/GL/GLGSRender.h"
#include "Emu/RSX/VK/VKGSRender.h"
#include "Emu/Audio/Null/NullAudioThread.h"
#include "Emu/Audio/AL/OpenALThread.h"
#ifdef _MSC_VER
@ -129,6 +130,7 @@ bool Rpcs3App::OnInit()
case frame_type::OpenGL: return std::make_unique<GLGSFrame>();
case frame_type::DX12: return std::make_unique<GSFrame>("DirectX 12");
case frame_type::Null: return std::make_unique<GSFrame>("Null");
case frame_type::Vulkan: return std::make_unique<GSFrame>("Vulkan");
}
throw EXCEPTION("Invalid Frame Type");
@ -142,6 +144,7 @@ bool Rpcs3App::OnInit()
case rsx_renderer_type::OpenGL: return std::make_shared<GLGSRender>();
#ifdef _MSC_VER
case rsx_renderer_type::DX12: return std::make_shared<D3D12GSRender>();
case rsx_renderer_type::Vulkan: return std::make_shared<>(VKGSRender);
#endif
default: throw EXCEPTION("Invalid GS Renderer %d", (int)mode);
}