gtk/gsk/gpu
Benjamin Otte 2fef71da5c gpu: Generate mipmap by default when downscaling too much
When downscaling more than 2x in either dimension, force mipmap use for
the texture in a texture node.
It improves the quality of textures but takes extra work.

The GL renderer does this, too (for textures that aren't in the icon cache).

This can be disabled via GSK_GPU_SKIP=mipmap.

Fixes the big-checkerboard-scaled-down2 test.
2024-01-07 07:22:53 +01:00
..
shaders gpu: Add supersampling for gradients 2024-01-07 07:22:53 +01:00
gskglbuffer.c gpu: Don't try to be smart 2024-01-07 07:22:50 +01:00
gskglbufferprivate.h gpu: Add float array to shaders and add an ubershader 2024-01-07 07:22:50 +01:00
gskgldescriptors.c gpu: Handle storage buffers via descriptors 2024-01-07 07:22:52 +01:00
gskgldescriptorsprivate.h gpu: Prepare GL rendering for samplerExternalEOS 2024-01-07 07:22:51 +01:00
gskgldevice.c gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskgldeviceprivate.h gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskglframe.c gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskglframeprivate.h gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskglimage.c gpu: Reorganize format handling 2024-01-07 07:22:52 +01:00
gskglimageprivate.h gpu: Reorganize format handling 2024-01-07 07:22:52 +01:00
gskgpublendmodeop.c gpu: Add a blend mode shader 2024-01-07 07:22:53 +01:00
gskgpublendmodeopprivate.h gpu: Add a blend mode shader 2024-01-07 07:22:53 +01:00
gskgpublendop.c gpu: Make blend modes configurable 2024-01-07 07:22:52 +01:00
gskgpublendopprivate.h gpu: Make blend modes configurable 2024-01-07 07:22:52 +01:00
gskgpublitop.c gpu: sync dmabufs via semaphores 2024-01-07 07:22:52 +01:00
gskgpublitopprivate.h
gskgpublurop.c gpu: Use variations in the blur shader 2024-01-07 07:22:53 +01:00
gskgpubluropprivate.h gpu: Use variations in the blur shader 2024-01-07 07:22:53 +01:00
gskgpuborderop.c gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskgpuborderopprivate.h gpu: Make border shader usable for inset/outset 2024-01-07 07:22:50 +01:00
gskgpuboxshadowop.c gpu: Make box shadow shader use variations 2024-01-07 07:22:53 +01:00
gskgpuboxshadowopprivate.h gpu: Add a box shadow shader 2024-01-07 07:22:51 +01:00
gskgpubuffer.c gpu: Add ability to run shaders 2024-01-07 07:22:49 +01:00
gskgpubufferprivate.h gpu: Add ability to run shaders 2024-01-07 07:22:49 +01:00
gskgpuclearop.c gpu: Add a CommandState struct to the command vfuncs 2024-01-07 07:22:51 +01:00
gskgpuclearopprivate.h gpu: Copy the clear trick from the Vulkan shader 2024-01-07 07:22:50 +01:00
gskgpuclip.c gpu: Add ability to run shaders 2024-01-07 07:22:49 +01:00
gskgpuclipprivate.h gpu: Add ability to run shaders 2024-01-07 07:22:49 +01:00
gskgpucolorizeop.c gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskgpucolorizeopprivate.h gpu: Refactor image handling 2024-01-07 07:22:50 +01:00
gskgpucolormatrixop.c gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskgpucolormatrixopprivate.h gpu: Add a color matrix shader 2024-01-07 07:22:52 +01:00
gskgpucolorop.c gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskgpucoloropprivate.h gpu: Add a color shader 2024-01-07 07:22:50 +01:00
gskgpuconicgradientop.c gpu: Add supersampling for gradients 2024-01-07 07:22:53 +01:00
gskgpuconicgradientopprivate.h gpu: Add a conic gradient shader 2024-01-07 07:22:53 +01:00
gskgpucrossfadeop.c gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskgpucrossfadeopprivate.h gpu: Add a cross-fade shader 2024-01-07 07:22:53 +01:00
gskgpudescriptors.c gpu: Handle storage buffers via descriptors 2024-01-07 07:22:52 +01:00
gskgpudescriptorsprivate.h gpu: Handle storage buffers via descriptors 2024-01-07 07:22:52 +01:00
gskgpudevice.c gpu: Add gsk_gpu_device_create_download_image() 2024-01-07 07:22:52 +01:00
gskgpudeviceprivate.h gpu: Add gsk_gpu_device_create_download_image() 2024-01-07 07:22:52 +01:00
gskgpudownloadop.c gpu: Add a boolean flag allow_dmabuf to the downloadop 2024-01-07 07:22:52 +01:00
gskgpudownloadopprivate.h gpu: Add a boolean flag allow_dmabuf to the downloadop 2024-01-07 07:22:52 +01:00
gskgpuframe.c vulkan: Add a Vulkan downloader 2024-01-07 07:22:52 +01:00
gskgpuframeprivate.h gpu: Implement a GdkDmabufDownloader 2024-01-07 07:22:52 +01:00
gskgpuglobalsop.c gpu: Handle storage buffers via descriptors 2024-01-07 07:22:52 +01:00
gskgpuglobalsopprivate.h gpu: Add ability to run shaders 2024-01-07 07:22:49 +01:00
gskgpuimage.c gpu: Add dmabuf import for Vulkan 2024-01-07 07:22:51 +01:00
gskgpuimageprivate.h gpu: Add dmabuf import for Vulkan 2024-01-07 07:22:51 +01:00
gskgpulineargradientop.c gpu: Add supersampling for gradients 2024-01-07 07:22:53 +01:00
gskgpulineargradientopprivate.h gpu: Handle >7 color stops 2024-01-07 07:22:52 +01:00
gskgpumaskop.c gpu: Use variations for the mask mode 2024-01-07 07:22:53 +01:00
gskgpumaskopprivate.h gpu: Add a mask shader 2024-01-07 07:22:52 +01:00
gskgpumipmapop.c gpu: sync dmabufs via semaphores 2024-01-07 07:22:52 +01:00
gskgpumipmapopprivate.h gpu: Add support for texture-scale nodes 2024-01-07 07:22:51 +01:00
gskgpunodeprocessor.c gpu: Generate mipmap by default when downscaling too much 2024-01-07 07:22:53 +01:00
gskgpunodeprocessorprivate.h
gskgpuop.c gpu: Add a CommandState struct to the command vfuncs 2024-01-07 07:22:51 +01:00
gskgpuopprivate.h gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskgpuprint.c gpu: Add a blend mode shader 2024-01-07 07:22:53 +01:00
gskgpuprintprivate.h gpu: Add a blend mode shader 2024-01-07 07:22:53 +01:00
gskgpuradialgradientop.c gpu: Add supersampling for gradients 2024-01-07 07:22:53 +01:00
gskgpuradialgradientopprivate.h gpu: Add a radial gradient shader 2024-01-07 07:22:53 +01:00
gskgpurenderer.c gpu: Generate mipmap by default when downscaling too much 2024-01-07 07:22:53 +01:00
gskgpurenderer.h
gskgpurendererprivate.h gpu: Implement a GdkDmabufDownloader 2024-01-07 07:22:52 +01:00
gskgpurenderpassop.c gpu: sync dmabufs via semaphores 2024-01-07 07:22:52 +01:00
gskgpurenderpassopprivate.h gpu: Add ability to run shaders 2024-01-07 07:22:49 +01:00
gskgpuroundedcolorop.c gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskgpuroundedcoloropprivate.h gpu: Add a rounded color shader 2024-01-07 07:22:50 +01:00
gskgpuscissorop.c gpu: Add a CommandState struct to the command vfuncs 2024-01-07 07:22:51 +01:00
gskgpuscissoropprivate.h gpu: Add scissor operation 2024-01-07 07:22:49 +01:00
gskgpushaderop.c gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskgpushaderopprivate.h gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskgpustraightalphaop.c gpu: Use variations in the straight-alpha shader 2024-01-07 07:22:53 +01:00
gskgpustraightalphaopprivate.h gpu: Handle alpha in image_op() wrapper 2024-01-07 07:22:53 +01:00
gskgputextureop.c gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskgputextureopprivate.h gpu: Refactor image handling 2024-01-07 07:22:50 +01:00
gskgputypesprivate.h gpu: Generate mipmap by default when downscaling too much 2024-01-07 07:22:53 +01:00
gskgpuuberop.c gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskgpuuberopprivate.h gpu: Refactor image handling 2024-01-07 07:22:50 +01:00
gskgpuuploadop.c gpu: Change the cairo upload op prototype 2024-01-07 07:22:53 +01:00
gskgpuuploadopprivate.h gpu: Change the cairo upload op prototype 2024-01-07 07:22:53 +01:00
gsknglrenderer.c gpu: Implement a GdkDmabufDownloader 2024-01-07 07:22:52 +01:00
gsknglrendererprivate.h
gskvulkanbuffer.c gpu: Add ability to run shaders 2024-01-07 07:22:49 +01:00
gskvulkanbufferprivate.h gpu: Add ability to run shaders 2024-01-07 07:22:49 +01:00
gskvulkandescriptors.c gpu: sync dmabufs via semaphores 2024-01-07 07:22:52 +01:00
gskvulkandescriptorsprivate.h gpu: sync dmabufs via semaphores 2024-01-07 07:22:52 +01:00
gskvulkandevice.c gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskvulkandeviceprivate.h gpu: Introduce the concept of "variation" 2024-01-07 07:22:53 +01:00
gskvulkanframe.c gpu: Make blend modes configurable 2024-01-07 07:22:52 +01:00
gskvulkanframeprivate.h gpu: sync dmabufs via semaphores 2024-01-07 07:22:52 +01:00
gskvulkanimage.c gpu: Update to memoryformat Vulkan code 2024-01-07 07:22:52 +01:00
gskvulkanimageprivate.h gpu: sync dmabufs via semaphores 2024-01-07 07:22:52 +01:00
gskvulkanmemory.c gpu: Improve memory handling on Vulkan 2024-01-07 07:22:52 +01:00
gskvulkanmemoryprivate.h gpu: Improve memory handling on Vulkan 2024-01-07 07:22:52 +01:00
gskvulkanrealdescriptors.c gpu: Make VulkanRealDescriptor keep the frame 2024-01-07 07:22:52 +01:00
gskvulkanrealdescriptorsprivate.h gpu: Make VulkanRealDescriptor keep the frame 2024-01-07 07:22:52 +01:00
gskvulkanrenderer.c gpu: Implement a GdkDmabufDownloader 2024-01-07 07:22:52 +01:00
gskvulkansubdescriptors.c gpu: Handle storage buffers via descriptors 2024-01-07 07:22:52 +01:00
gskvulkansubdescriptorsprivate.h gpu: Add back single descriptors set usage with descriptor indexing 2024-01-07 07:22:51 +01:00