gtk2/gsk
Benjamin Otte a5f8a74ec1 vulkan: Only render minimal region
It's faster to render once for every rectangle in the clip region than
rendering the outline of the clip region.
Especially because this reduces the time necessary to build up the frame
data.

In widget-factory (where we have 3 rectangles), this leads to a 5x
speedup in the rendering time rendering alone.
Snapshotting time goes from 10ms to ~1ms, which is another huge
improvement.
2016-12-27 00:31:33 +01:00
..
resources vulkan: Handle linear gradients 2016-12-26 17:22:02 +01:00
gsk.h gsk: Add GskRoundedRect 2016-12-20 18:01:10 +01:00
gskcairoblur.c gsk: Add GskShadowNode 2016-12-20 18:01:12 +01:00
gskcairoblurprivate.h gsk: Add GskShadowNode 2016-12-20 18:01:12 +01:00
gskcairorenderer.c gsk: Add gsk_renderer_render_texture() 2016-12-23 08:11:01 +01:00
gskcairorendererprivate.h cairorenderer: Remove nonexisting function from header 2016-11-30 15:15:08 +01:00
gskdebug.c gsk: Add debug category for fallbacks 2016-12-24 06:19:16 +01:00
gskdebugprivate.h gsk: Add debug category for fallbacks 2016-12-24 06:19:16 +01:00
gskenums.h gsk: Add docs and error handling to serialization API 2016-12-23 08:11:01 +01:00
gskenumtypes.c.template Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
gskenumtypes.h.template Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
gskgldriver.c gsk: Rename to gsk_texture_download_surface() 2016-12-23 08:11:01 +01:00
gskgldriverprivate.h gsktexture: Allow attaching render data to textures 2016-11-16 17:36:33 +01:00
gskglprofiler.c gsk: Bind GL context to the GL profiler 2016-10-18 11:49:10 +01:00
gskglprofilerprivate.h gsk: Bind GL context to the GL profiler 2016-10-18 11:49:10 +01:00
gskglrenderer.c gsk: Implement gsk_renderer_render_texture() on GL 2016-12-23 08:11:01 +01:00
gskglrendererprivate.h Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
gskprivate.c Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
gskprivate.h Initial implementation of GSK rendering pipeline 2016-10-18 11:29:34 +01:00
gskprofiler.c gsk: Add profiler object 2016-10-18 11:49:10 +01:00
gskprofilerprivate.h gsk: Add profiler object 2016-10-18 11:49:10 +01:00
gskrenderer.c gsk: Add gsk_texture_download() API 2016-12-23 08:11:01 +01:00
gskrenderer.h gsk: Add gsk_renderer_render_texture() 2016-12-23 08:11:01 +01:00
gskrendererprivate.h gsk: Add gsk_renderer_render_texture() 2016-12-23 08:11:01 +01:00
gskrendernode.c gsk: Fix memory leak in gsk_render_node_write_to_file() 2016-12-23 07:22:41 -08:00
gskrendernode.h gsk: Add docs and error handling to serialization API 2016-12-23 08:11:01 +01:00
gskrendernodeimpl.c vulkan: Handle linear gradients 2016-12-26 17:22:02 +01:00
gskrendernodeprivate.h vulkan: Handle linear gradients 2016-12-26 17:22:02 +01:00
gskroundedrect.c vulkan: Fold clip into push constants 2016-12-24 06:19:16 +01:00
gskroundedrect.h gsk: Add contains/intersect functions for GskRoundedRect 2016-12-20 18:01:12 +01:00
gskroundedrectprivate.h vulkan: Fold clip into push constants 2016-12-24 06:19:16 +01:00
gskshaderbuilder.c Fix a few memory leaks 2016-10-21 06:45:22 +02:00
gskshaderbuilderprivate.h gsk: Consolidate program creation and storage 2016-10-18 11:49:07 +01:00
gsktexture.c gsk: Add gsk_texture_download() API 2016-12-23 08:11:01 +01:00
gsktexture.h gsk: Add gsk_texture_download() API 2016-12-23 08:11:01 +01:00
gsktextureprivate.h gsk: Add gsk_texture_download() API 2016-12-23 08:11:01 +01:00
gsktypes.h gsk: Add GskTexture 2016-11-08 20:31:34 +01:00
gskvulkanblendpipeline.c vulkan: Get vertex description from pipeline subclass 2016-12-20 18:01:11 +01:00
gskvulkanblendpipelineprivate.h vulkan: Move vertex data tracking to the pipeline subclass 2016-12-20 18:01:11 +01:00
gskvulkanbuffer.c vulkan: Implement gsk_renderer_render_texture() 2016-12-23 08:11:01 +01:00
gskvulkanbufferprivate.h vulkan: Implement gsk_renderer_render_texture() 2016-12-23 08:11:01 +01:00
gskvulkanclip.c vulkan: Fold clip into push constants 2016-12-24 06:19:16 +01:00
gskvulkanclipprivate.h vulkan: Fold clip into push constants 2016-12-24 06:19:16 +01:00
gskvulkancolorpipeline.c vulkan: We use VK_FORMAT_B8G8R8A8_UNORM 2016-12-25 06:23:12 +01:00
gskvulkancolorpipelineprivate.h vulkan: Pass color rects in instance data 2016-12-20 18:01:11 +01:00
gskvulkancommandpool.c vulkan: Implement gsk_renderer_render_texture() 2016-12-23 08:11:01 +01:00
gskvulkancommandpoolprivate.h vulkan: Split out command pool 2016-12-20 18:01:11 +01:00
gskvulkanimage.c vulkan: We use VK_FORMAT_B8G8R8A8_UNORM 2016-12-25 06:23:12 +01:00
gskvulkanimageprivate.h vulkan: Implement gsk_renderer_render_texture() 2016-12-23 08:11:01 +01:00
gskvulkanlineargradientpipeline.c vulkan: Handle linear gradients 2016-12-26 17:22:02 +01:00
gskvulkanlineargradientpipelineprivate.h vulkan: Handle linear gradients 2016-12-26 17:22:02 +01:00
gskvulkanmemory.c gsk: Loads of work on Vulkan backend 2016-12-09 18:35:51 +01:00
gskvulkanmemoryprivate.h gsk: Loads of work on Vulkan backend 2016-12-09 18:35:51 +01:00
gskvulkanpipeline.c vulkan: Get vertex description from pipeline subclass 2016-12-20 18:01:11 +01:00
gskvulkanpipelineprivate.h vulkan: Get vertex description from pipeline subclass 2016-12-20 18:01:11 +01:00
gskvulkanpushconstants.c vulkan: Fold clip into push constants 2016-12-24 06:19:16 +01:00
gskvulkanpushconstantsprivate.h vulkan: Fold clip into push constants 2016-12-24 06:19:16 +01:00
gskvulkanrender.c vulkan: Only render minimal region 2016-12-27 00:31:33 +01:00
gskvulkanrenderer.c vulkan: Only render minimal region 2016-12-27 00:31:33 +01:00
gskvulkanrendererprivate.h vulkan: Add GskVulkanUploader 2016-12-20 18:01:11 +01:00
gskvulkanrenderpass.c vulkan: Handle linear gradients 2016-12-26 17:22:02 +01:00
gskvulkanrenderpassprivate.h gsk: Add GskVulkanClip 2016-12-24 06:19:16 +01:00
gskvulkanrenderprivate.h vulkan: Handle linear gradients 2016-12-26 17:22:02 +01:00
gskvulkanshader.c gsk: Loads of work on Vulkan backend 2016-12-09 18:35:51 +01:00
gskvulkanshaderprivate.h gsk: Loads of work on Vulkan backend 2016-12-09 18:35:51 +01:00
Makefile.am vulkan: Handle linear gradients 2016-12-26 17:22:02 +01:00