mirror of
https://github.com/EduApps-CDG/OpenDX
synced 2024-12-30 09:45:37 +01:00
[dxvk] Add filter type to generateMipmaps
This commit is contained in:
parent
3825d16a31
commit
7cd46e72e9
@ -1105,7 +1105,7 @@ namespace dxvk {
|
|||||||
|
|
||||||
EmitCs([cDstImageView = view->GetImageView()]
|
EmitCs([cDstImageView = view->GetImageView()]
|
||||||
(DxvkContext* ctx) {
|
(DxvkContext* ctx) {
|
||||||
ctx->generateMipmaps(cDstImageView);
|
ctx->generateMipmaps(cDstImageView, VK_FILTER_LINEAR);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4209,7 +4209,7 @@ namespace dxvk {
|
|||||||
EmitCs([
|
EmitCs([
|
||||||
cImageView = pResource->GetSampleView(false)
|
cImageView = pResource->GetSampleView(false)
|
||||||
] (DxvkContext* ctx) {
|
] (DxvkContext* ctx) {
|
||||||
ctx->generateMipmaps(cImageView);
|
ctx->generateMipmaps(cImageView, VK_FILTER_LINEAR);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1427,7 +1427,8 @@ namespace dxvk {
|
|||||||
|
|
||||||
|
|
||||||
void DxvkContext::generateMipmaps(
|
void DxvkContext::generateMipmaps(
|
||||||
const Rc<DxvkImageView>& imageView) {
|
const Rc<DxvkImageView>& imageView,
|
||||||
|
VkFilter filter) {
|
||||||
if (imageView->info().numLevels <= 1)
|
if (imageView->info().numLevels <= 1)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@ -1442,7 +1443,7 @@ namespace dxvk {
|
|||||||
// Common descriptor set properties that we use to
|
// Common descriptor set properties that we use to
|
||||||
// bind the source image view to the fragment shader
|
// bind the source image view to the fragment shader
|
||||||
VkDescriptorImageInfo descriptorImage;
|
VkDescriptorImageInfo descriptorImage;
|
||||||
descriptorImage.sampler = m_common->metaBlit().getSampler(VK_FILTER_LINEAR);
|
descriptorImage.sampler = m_common->metaBlit().getSampler(filter);
|
||||||
descriptorImage.imageView = VK_NULL_HANDLE;
|
descriptorImage.imageView = VK_NULL_HANDLE;
|
||||||
descriptorImage.imageLayout = imageView->imageInfo().layout;
|
descriptorImage.imageLayout = imageView->imageInfo().layout;
|
||||||
|
|
||||||
|
@ -624,9 +624,11 @@ namespace dxvk {
|
|||||||
* Uses blitting to generate lower mip levels from
|
* Uses blitting to generate lower mip levels from
|
||||||
* the top-most mip level passed to this method.
|
* the top-most mip level passed to this method.
|
||||||
* \param [in] imageView The image to generate mips for
|
* \param [in] imageView The image to generate mips for
|
||||||
|
* \param [in] filter The filter to use for generation
|
||||||
*/
|
*/
|
||||||
void generateMipmaps(
|
void generateMipmaps(
|
||||||
const Rc<DxvkImageView>& imageView);
|
const Rc<DxvkImageView>& imageView,
|
||||||
|
VkFilter filter);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Initializes or invalidates an image
|
* \brief Initializes or invalidates an image
|
||||||
|
Loading…
x
Reference in New Issue
Block a user