mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-02-20 19:54:19 +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()]
|
||||
(DxvkContext* ctx) {
|
||||
ctx->generateMipmaps(cDstImageView);
|
||||
ctx->generateMipmaps(cDstImageView, VK_FILTER_LINEAR);
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -4209,7 +4209,7 @@ namespace dxvk {
|
||||
EmitCs([
|
||||
cImageView = pResource->GetSampleView(false)
|
||||
] (DxvkContext* ctx) {
|
||||
ctx->generateMipmaps(cImageView);
|
||||
ctx->generateMipmaps(cImageView, VK_FILTER_LINEAR);
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -1427,7 +1427,8 @@ namespace dxvk {
|
||||
|
||||
|
||||
void DxvkContext::generateMipmaps(
|
||||
const Rc<DxvkImageView>& imageView) {
|
||||
const Rc<DxvkImageView>& imageView,
|
||||
VkFilter filter) {
|
||||
if (imageView->info().numLevels <= 1)
|
||||
return;
|
||||
|
||||
@ -1442,7 +1443,7 @@ namespace dxvk {
|
||||
// Common descriptor set properties that we use to
|
||||
// bind the source image view to the fragment shader
|
||||
VkDescriptorImageInfo descriptorImage;
|
||||
descriptorImage.sampler = m_common->metaBlit().getSampler(VK_FILTER_LINEAR);
|
||||
descriptorImage.sampler = m_common->metaBlit().getSampler(filter);
|
||||
descriptorImage.imageView = VK_NULL_HANDLE;
|
||||
descriptorImage.imageLayout = imageView->imageInfo().layout;
|
||||
|
||||
|
@ -624,9 +624,11 @@ namespace dxvk {
|
||||
* Uses blitting to generate lower mip levels from
|
||||
* the top-most mip level passed to this method.
|
||||
* \param [in] imageView The image to generate mips for
|
||||
* \param [in] filter The filter to use for generation
|
||||
*/
|
||||
void generateMipmaps(
|
||||
const Rc<DxvkImageView>& imageView);
|
||||
const Rc<DxvkImageView>& imageView,
|
||||
VkFilter filter);
|
||||
|
||||
/**
|
||||
* \brief Initializes or invalidates an image
|
||||
|
Loading…
x
Reference in New Issue
Block a user