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
+2 -1
View File
@@ -36,7 +36,8 @@ enum class frame_type
{
Null,
OpenGL,
DX12
DX12,
Vulkan
};
class GSRender : public rsx::thread
+6 -1
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;
}
};
+3
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);
}