mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-02-18 22:54:15 +01:00
[dxvk] Accept VkClearValue in DxvkContext::clearImageView
This commit is contained in:
parent
da21a6db7f
commit
beedd39f7d
@ -651,11 +651,11 @@ namespace dxvk {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Set up clear color struct
|
// Set up clear color struct
|
||||||
VkClearColorValue clearValue;
|
VkClearValue clearValue;
|
||||||
clearValue.uint32[0] = Values[0];
|
clearValue.color.uint32[0] = Values[0];
|
||||||
clearValue.uint32[1] = Values[1];
|
clearValue.color.uint32[1] = Values[1];
|
||||||
clearValue.uint32[2] = Values[2];
|
clearValue.color.uint32[2] = Values[2];
|
||||||
clearValue.uint32[3] = Values[3];
|
clearValue.color.uint32[3] = Values[3];
|
||||||
|
|
||||||
if (uav->GetResourceType() == D3D11_RESOURCE_DIMENSION_BUFFER) {
|
if (uav->GetResourceType() == D3D11_RESOURCE_DIMENSION_BUFFER) {
|
||||||
// In case of raw and structured buffers as well as typed
|
// In case of raw and structured buffers as well as typed
|
||||||
@ -693,7 +693,7 @@ namespace dxvk {
|
|||||||
ctx->clearBufferView(
|
ctx->clearBufferView(
|
||||||
cDstView, 0,
|
cDstView, 0,
|
||||||
cDstView->elementCount(),
|
cDstView->elementCount(),
|
||||||
cClearValue);
|
cClearValue.color);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -729,11 +729,11 @@ namespace dxvk {
|
|||||||
if (uav == nullptr)
|
if (uav == nullptr)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
VkClearColorValue clearValue;
|
VkClearValue clearValue;
|
||||||
clearValue.float32[0] = Values[0];
|
clearValue.color.float32[0] = Values[0];
|
||||||
clearValue.float32[1] = Values[1];
|
clearValue.color.float32[1] = Values[1];
|
||||||
clearValue.float32[2] = Values[2];
|
clearValue.color.float32[2] = Values[2];
|
||||||
clearValue.float32[3] = Values[3];
|
clearValue.color.float32[3] = Values[3];
|
||||||
|
|
||||||
if (uav->GetResourceType() == D3D11_RESOURCE_DIMENSION_BUFFER) {
|
if (uav->GetResourceType() == D3D11_RESOURCE_DIMENSION_BUFFER) {
|
||||||
EmitCs([
|
EmitCs([
|
||||||
@ -743,7 +743,7 @@ namespace dxvk {
|
|||||||
ctx->clearBufferView(
|
ctx->clearBufferView(
|
||||||
cDstView, 0,
|
cDstView, 0,
|
||||||
cDstView->elementCount(),
|
cDstView->elementCount(),
|
||||||
cClearValue);
|
cClearValue.color);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
EmitCs([
|
EmitCs([
|
||||||
@ -799,6 +799,7 @@ namespace dxvk {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void STDMETHODCALLTYPE D3D11DeviceContext::ClearView(
|
void STDMETHODCALLTYPE D3D11DeviceContext::ClearView(
|
||||||
ID3D11View* pView,
|
ID3D11View* pView,
|
||||||
const FLOAT Color[4],
|
const FLOAT Color[4],
|
||||||
@ -807,6 +808,7 @@ namespace dxvk {
|
|||||||
Logger::err("D3D11DeviceContext::ClearView: not implemented");
|
Logger::err("D3D11DeviceContext::ClearView: not implemented");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void STDMETHODCALLTYPE D3D11DeviceContext::GenerateMips(ID3D11ShaderResourceView* pShaderResourceView) {
|
void STDMETHODCALLTYPE D3D11DeviceContext::GenerateMips(ID3D11ShaderResourceView* pShaderResourceView) {
|
||||||
auto view = static_cast<D3D11ShaderResourceView*>(pShaderResourceView);
|
auto view = static_cast<D3D11ShaderResourceView*>(pShaderResourceView);
|
||||||
|
|
||||||
|
@ -531,7 +531,7 @@ namespace dxvk {
|
|||||||
const Rc<DxvkImageView>& imageView,
|
const Rc<DxvkImageView>& imageView,
|
||||||
VkOffset3D offset,
|
VkOffset3D offset,
|
||||||
VkExtent3D extent,
|
VkExtent3D extent,
|
||||||
VkClearColorValue value) {
|
VkClearValue value) {
|
||||||
this->spillRenderPass();
|
this->spillRenderPass();
|
||||||
this->unbindComputePipeline();
|
this->unbindComputePipeline();
|
||||||
|
|
||||||
@ -565,7 +565,7 @@ namespace dxvk {
|
|||||||
|
|
||||||
// Prepare shader arguments
|
// Prepare shader arguments
|
||||||
DxvkMetaClearArgs pushArgs;
|
DxvkMetaClearArgs pushArgs;
|
||||||
pushArgs.clearValue = value;
|
pushArgs.clearValue = value.color;
|
||||||
pushArgs.offset = offset;
|
pushArgs.offset = offset;
|
||||||
pushArgs.extent = extent;
|
pushArgs.extent = extent;
|
||||||
|
|
||||||
|
@ -244,7 +244,7 @@ namespace dxvk {
|
|||||||
const Rc<DxvkImageView>& imageView,
|
const Rc<DxvkImageView>& imageView,
|
||||||
VkOffset3D offset,
|
VkOffset3D offset,
|
||||||
VkExtent3D extent,
|
VkExtent3D extent,
|
||||||
VkClearColorValue value);
|
VkClearValue value);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Copies data from one buffer to another
|
* \brief Copies data from one buffer to another
|
||||||
|
Loading…
x
Reference in New Issue
Block a user