renderer_vulkan: Implement renderer and rasterizer classes
* Also WIP. Vulkan crashes when allocating command buffers, need to investigate...
This commit is contained in:
@ -21,6 +21,9 @@ public:
|
||||
/// Initialize the renderer
|
||||
virtual VideoCore::ResultStatus Init() = 0;
|
||||
|
||||
/// Returns the rasterizer owned by the renderer
|
||||
virtual VideoCore::RasterizerInterface* Rasterizer() = 0;
|
||||
|
||||
/// Shutdown the renderer
|
||||
virtual void ShutDown() = 0;
|
||||
|
||||
@ -37,6 +40,8 @@ public:
|
||||
/// Cleans up after video dumping is ended
|
||||
virtual void CleanupVideoDumping() = 0;
|
||||
|
||||
virtual void Sync() = 0;
|
||||
|
||||
/// Updates the framebuffer layout of the contained render window handle.
|
||||
void UpdateCurrentFramebufferLayout(bool is_portrait_mode = {});
|
||||
|
||||
@ -51,10 +56,6 @@ public:
|
||||
return m_current_frame;
|
||||
}
|
||||
|
||||
VideoCore::RasterizerInterface* Rasterizer() const {
|
||||
return rasterizer.get();
|
||||
}
|
||||
|
||||
Frontend::EmuWindow& GetRenderWindow() {
|
||||
return render_window;
|
||||
}
|
||||
@ -63,11 +64,8 @@ public:
|
||||
return render_window;
|
||||
}
|
||||
|
||||
void Sync();
|
||||
|
||||
protected:
|
||||
Frontend::EmuWindow& render_window; ///< Reference to the render window handle.
|
||||
std::unique_ptr<VideoCore::RasterizerInterface> rasterizer;
|
||||
f32 m_current_fps = 0.0f; ///< Current framerate, should be set by the renderer
|
||||
int m_current_frame = 0; ///< Current frame, should be set by the renderer
|
||||
};
|
||||
|
Reference in New Issue
Block a user