mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-08-11 18:50:55 +00:00
Add vulkan GS backend to project
This commit is contained in:
parent
4c133ab5bf
commit
d287ba44ce
3 changed files with 11 additions and 2 deletions
|
@ -36,7 +36,8 @@ enum class frame_type
|
||||||
{
|
{
|
||||||
Null,
|
Null,
|
||||||
OpenGL,
|
OpenGL,
|
||||||
DX12
|
DX12,
|
||||||
|
Vulkan
|
||||||
};
|
};
|
||||||
|
|
||||||
class GSRender : public rsx::thread
|
class GSRender : public rsx::thread
|
||||||
|
|
|
@ -50,7 +50,8 @@ enum class rsx_renderer_type
|
||||||
{
|
{
|
||||||
Null,
|
Null,
|
||||||
OpenGL,
|
OpenGL,
|
||||||
DX12
|
DX12,
|
||||||
|
Vulkan
|
||||||
};
|
};
|
||||||
|
|
||||||
enum class rsx_aspect_ratio
|
enum class rsx_aspect_ratio
|
||||||
|
@ -93,6 +94,7 @@ namespace convert
|
||||||
case rsx_renderer_type::Null: return "Null";
|
case rsx_renderer_type::Null: return "Null";
|
||||||
case rsx_renderer_type::OpenGL: return "OpenGL";
|
case rsx_renderer_type::OpenGL: return "OpenGL";
|
||||||
case rsx_renderer_type::DX12: return "DX12";
|
case rsx_renderer_type::DX12: return "DX12";
|
||||||
|
case rsx_renderer_type::Vulkan: return "Vulkan";
|
||||||
}
|
}
|
||||||
|
|
||||||
return "Unknown";
|
return "Unknown";
|
||||||
|
@ -113,6 +115,9 @@ namespace convert
|
||||||
if (value == "DX12")
|
if (value == "DX12")
|
||||||
return rsx_renderer_type::DX12;
|
return rsx_renderer_type::DX12;
|
||||||
|
|
||||||
|
if (value == "Vulkan")
|
||||||
|
return rsx_renderer_type::Vulkan;
|
||||||
|
|
||||||
return rsx_renderer_type::Null;
|
return rsx_renderer_type::Null;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
|
@ -32,6 +32,7 @@
|
||||||
|
|
||||||
#include "Emu/RSX/Null/NullGSRender.h"
|
#include "Emu/RSX/Null/NullGSRender.h"
|
||||||
#include "Emu/RSX/GL/GLGSRender.h"
|
#include "Emu/RSX/GL/GLGSRender.h"
|
||||||
|
#include "Emu/RSX/VK/VKGSRender.h"
|
||||||
#include "Emu/Audio/Null/NullAudioThread.h"
|
#include "Emu/Audio/Null/NullAudioThread.h"
|
||||||
#include "Emu/Audio/AL/OpenALThread.h"
|
#include "Emu/Audio/AL/OpenALThread.h"
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
|
@ -129,6 +130,7 @@ bool Rpcs3App::OnInit()
|
||||||
case frame_type::OpenGL: return std::make_unique<GLGSFrame>();
|
case frame_type::OpenGL: return std::make_unique<GLGSFrame>();
|
||||||
case frame_type::DX12: return std::make_unique<GSFrame>("DirectX 12");
|
case frame_type::DX12: return std::make_unique<GSFrame>("DirectX 12");
|
||||||
case frame_type::Null: return std::make_unique<GSFrame>("Null");
|
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");
|
throw EXCEPTION("Invalid Frame Type");
|
||||||
|
@ -142,6 +144,7 @@ bool Rpcs3App::OnInit()
|
||||||
case rsx_renderer_type::OpenGL: return std::make_shared<GLGSRender>();
|
case rsx_renderer_type::OpenGL: return std::make_shared<GLGSRender>();
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
case rsx_renderer_type::DX12: return std::make_shared<D3D12GSRender>();
|
case rsx_renderer_type::DX12: return std::make_shared<D3D12GSRender>();
|
||||||
|
case rsx_renderer_type::Vulkan: return std::make_shared<>(VKGSRender);
|
||||||
#endif
|
#endif
|
||||||
default: throw EXCEPTION("Invalid GS Renderer %d", (int)mode);
|
default: throw EXCEPTION("Invalid GS Renderer %d", (int)mode);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue