[D3D12] Command processor command lists

This commit is contained in:
Triang3l
2018-07-24 17:07:38 +03:00
parent 3a90f7a246
commit 82f2abed0d
2 changed files with 53 additions and 19 deletions

View File

@@ -17,6 +17,7 @@
#include "xenia/gpu/d3d12/pipeline_cache.h"
#include "xenia/gpu/xenos.h"
#include "xenia/kernel/kernel_state.h"
#include "xenia/ui/d3d12/command_list.h"
#include "xenia/ui/d3d12/d3d12_context.h"
namespace xe {
@@ -52,11 +53,18 @@ class D3D12CommandProcessor : public CommandProcessor {
bool IssueCopy() override;
private:
void BeginFrame();
void EndFrame();
// Returns true if a new frame was started.
bool BeginFrame();
// Returns true if an open frame was ended.
bool EndFrame();
bool cache_clear_requested_ = false;
std::unique_ptr<ui::d3d12::CommandList>
command_lists_setup_[ui::d3d12::D3D12Context::kQueuedFrames] = {};
std::unique_ptr<ui::d3d12::CommandList>
command_lists_[ui::d3d12::D3D12Context::kQueuedFrames] = {};
std::unique_ptr<PipelineCache> pipeline_cache_;
uint32_t current_queue_frame_ = UINT32_MAX;