gtk2/gsk
Benjamin Otte 6525fbe90f vulkan: Don't create more than one render object
By creating unlimited render objects, we would never wait on the GPU.

This would mean that if the GPU was the bottleneck, we would fill its
queue with render commands faster than it could process them.

And because the nvidia binary driver and my code work surprisingly well
and bugfree, this lead to exhaustion of RAM. I had 50GB of swap
configured and my hard disk was quicker as swap storage than my GPU was
at processing the commands, so stuff still filled up.

At that point my computer became rather unresponsive and I decided to
reboot it, so I that could write this patch.
2016-12-09 18:35:52 +01:00
..
resources vulkan: Make MVP matrix available to vertex shader 2016-12-09 18:35:51 +01:00
gsk.h gsk: Add GskTexture 2016-11-08 20:31:34 +01:00
gskcairorenderer.c gskrenderer: Add GError argument to gsk_renderer_realize() 2016-11-30 15:58:07 +01:00
gskcairorendererprivate.h cairorenderer: Remove nonexisting function from header 2016-11-30 15:15:08 +01:00
gskdebug.c vulkan: Don't wait until graphics are done computing 2016-12-09 18:35:51 +01:00
gskdebugprivate.h vulkan: Don't wait until graphics are done computing 2016-12-09 18:35:51 +01:00
gskenums.h gsk: Bump up all version annotations 2016-10-18 11:49:16 +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: Allow 0 for gsk_gl_driver_begin_frame() 2016-12-05 15:02:47 +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 gdkgl: Add gdk_gl_context_get_damage() 2016-12-05 15:02:47 +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 skeleton for Vulkan renderer 2016-12-09 18:35:51 +01:00
gskrenderer.h gskrenderer: Add gsk_renderer_begin_draw_frame() 2016-12-05 15:02:47 +01:00
gskrendererprivate.h gdk: Make gdk_window_begin_draw_frame() take a draw context 2016-12-05 15:02:47 +01:00
gskrendernode.c gsk: Allow creating cairo contexts for 0x0 nodes 2016-11-15 17:49:19 +01:00
gskrendernode.h gsk: Add GskTexture 2016-11-08 20:31:34 +01:00
gskrendernodeiter.c gsk: Bump up all version annotations 2016-10-18 11:49:16 +01:00
gskrendernodeiter.h gsk: Bump up all version annotations 2016-10-18 11:49:16 +01:00
gskrendernodeprivate.h gsk: Add GskTexture 2016-11-08 20:31:34 +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 gsktexture: Allow attaching render data to textures 2016-11-16 17:36:33 +01:00
gsktexture.h gsk: Rework GskTexture 2016-11-16 17:36:33 +01:00
gsktextureprivate.h gsktexture: Allow attaching render data to textures 2016-11-16 17:36:33 +01:00
gsktypes.h gsk: Add GskTexture 2016-11-08 20:31:34 +01:00
gskvulkanbuffer.c gsk: Loads of work on Vulkan backend 2016-12-09 18:35:51 +01:00
gskvulkanbufferprivate.h gsk: Loads of work on Vulkan backend 2016-12-09 18:35:51 +01:00
gskvulkanimage.c vulkan: Turn swapchain image targets into GskVulkanImages 2016-12-09 18:35:52 +01:00
gskvulkanimageprivate.h vulkan: Turn swapchain image targets into GskVulkanImages 2016-12-09 18:35:52 +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: Enable alpha blending 2016-12-09 18:35:52 +01:00
gskvulkanpipelineprivate.h vulkan: Make GskVulkanRenderer work 2016-12-09 18:35:51 +01:00
gskvulkanrender.c vulkan: Don't limit number of descriptor sets 2016-12-09 18:35:52 +01:00
gskvulkanrenderer.c vulkan: Don't create more than one render object 2016-12-09 18:35:52 +01:00
gskvulkanrendererprivate.h gsk: Add skeleton for Vulkan renderer 2016-12-09 18:35:51 +01:00
gskvulkanrenderpass.c vulkan: Add more node operations 2016-12-09 18:35:52 +01:00
gskvulkanrenderpassprivate.h vulkan: Push the correct matrix when drawing 2016-12-09 18:35:52 +01:00
gskvulkanrenderprivate.h vulkan: Redo descriptor set handling 2016-12-09 18:35:52 +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: Add GskVulkanRenderPass 2016-12-09 18:35:51 +01:00