mirror of
https://github.com/doitsujin/dxvk.git
synced 2024-12-01 16:24:12 +01:00
[dxvk] Added dispatch call
This commit is contained in:
parent
47bdf9408b
commit
64d9ad0027
@ -124,6 +124,16 @@ namespace dxvk {
|
||||
}
|
||||
|
||||
|
||||
void DxvkContext::dispatch(
|
||||
uint32_t x,
|
||||
uint32_t y,
|
||||
uint32_t z) {
|
||||
TRACE(this, x, y, z);
|
||||
|
||||
m_cmd->cmdDispatch(x, y, z);
|
||||
}
|
||||
|
||||
|
||||
void DxvkContext::draw(
|
||||
uint32_t vertexCount,
|
||||
uint32_t instanceCount,
|
||||
@ -265,6 +275,11 @@ namespace dxvk {
|
||||
}
|
||||
|
||||
|
||||
void DxvkContext::bindComputePipeline() {
|
||||
// TODO implement
|
||||
}
|
||||
|
||||
|
||||
void DxvkContext::bindGraphicsPipeline() {
|
||||
if (m_state.flags.test(DxvkContextFlag::GpDirtyPipeline)) {
|
||||
m_state.flags.clr(DxvkContextFlag::GpDirtyPipeline);
|
||||
@ -345,6 +360,11 @@ namespace dxvk {
|
||||
}
|
||||
|
||||
|
||||
void DxvkContext::commitComputeState() {
|
||||
this->bindComputePipeline();
|
||||
}
|
||||
|
||||
|
||||
void DxvkContext::commitGraphicsState() {
|
||||
this->renderPassBegin();
|
||||
this->bindGraphicsPipeline();
|
||||
|
@ -96,6 +96,18 @@ namespace dxvk {
|
||||
const VkClearAttachment& attachment,
|
||||
const VkClearRect& clearArea);
|
||||
|
||||
/**
|
||||
* \brief Starts compute jobs
|
||||
*
|
||||
* \param [in] x Number of threads in X direction
|
||||
* \param [in] y Number of threads in Y direction
|
||||
* \param [in] z Number of threads in Z direction
|
||||
*/
|
||||
void dispatch(
|
||||
uint32_t x,
|
||||
uint32_t y,
|
||||
uint32_t z);
|
||||
|
||||
/**
|
||||
* \brief Draws primitive without using an index buffer
|
||||
*
|
||||
@ -191,6 +203,7 @@ namespace dxvk {
|
||||
void renderPassBegin();
|
||||
void renderPassEnd();
|
||||
|
||||
void bindComputePipeline();
|
||||
void bindGraphicsPipeline();
|
||||
|
||||
void updateDynamicState();
|
||||
@ -199,6 +212,7 @@ namespace dxvk {
|
||||
void updateIndexBufferBinding();
|
||||
void updateVertexBufferBindings();
|
||||
|
||||
void commitComputeState();
|
||||
void commitGraphicsState();
|
||||
|
||||
DxvkShaderStageState* getShaderStage(
|
||||
|
Loading…
Reference in New Issue
Block a user