mirror of
https://github.com/wheremyfoodat/Panda3DS.git
synced 2025-06-03 12:27:21 +12:00
Stub Vulkan backend support
A lot of the architecture of the emulator here does not allow for vulkan to initialize easily since it involves a bit of data to be exchanged between SDL and Vulkan. This commit just adds the foundational linkage and library code for vulkan support.
This commit is contained in:
parent
c98e5fb631
commit
d2241a25bc
7 changed files with 102 additions and 3 deletions
18
include/renderer_vk/renderer_vk.hpp
Normal file
18
include/renderer_vk/renderer_vk.hpp
Normal file
|
@ -0,0 +1,18 @@
|
|||
#include "renderer.hpp"
|
||||
#include "vulkan_api.hpp"
|
||||
|
||||
class GPU;
|
||||
|
||||
class RendererVK final : public Renderer {
|
||||
public:
|
||||
RendererVK(GPU& gpu, const std::array<u32, regNum>& internalRegs);
|
||||
~RendererVK() override;
|
||||
|
||||
void reset() override;
|
||||
void display() override;
|
||||
void initGraphicsContext() override;
|
||||
void clearBuffer(u32 startAddress, u32 endAddress, u32 value, u32 control) override;
|
||||
void displayTransfer(u32 inputAddr, u32 outputAddr, u32 inputSize, u32 outputSize, u32 flags) override;
|
||||
void drawVertices(PICA::PrimType primType, std::span<const PICA::Vertex> vertices) override;
|
||||
void screenshot(const std::string& name) override;
|
||||
};
|
10
include/renderer_vk/vulkan_api.hpp
Normal file
10
include/renderer_vk/vulkan_api.hpp
Normal file
|
@ -0,0 +1,10 @@
|
|||
#pragma once
|
||||
|
||||
#define VK_NO_PROTOTYPES
|
||||
#include <vulkan/vulkan.h>
|
||||
|
||||
#define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC 1
|
||||
#define VULKAN_HPP_NO_EXCEPTIONS
|
||||
#include <vulkan/vulkan.hpp>
|
||||
#include <vulkan/vulkan_format_traits.hpp>
|
||||
#include <vulkan/vulkan_hash.hpp>
|
Loading…
Add table
Add a link
Reference in a new issue