llyyr 
								
							 
						 
						
							
							
							
							
								
							
							
								6e1c8748ff 
								
							 
						 
						
							
							
								
								render: introduce bt.1886 transfer function  
							
							 
							
							
							
						 
						
							2025-10-04 18:13:37 +05:30  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Félix Poisot 
								
							 
						 
						
							
							
							
							
								
							
							
								c2d9ae2142 
								
							 
						 
						
							
							
								
								render: introduce Gamma 2.2 color transform  
							
							 
							
							
							
						 
						
							2025-10-03 19:39:17 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								d1c88e9497 
								
							 
						 
						
							
							
								
								render/vulkan: add linear single-subpass  
							
							 
							
							... 
							
							
							
							When the TF is set to EXT_LINEAR, we can write out color values
straight up to a non-SRGB image view. 
							
						 
						
							2025-09-20 10:50:22 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								3e88a79e6f 
								
							 
						 
						
							
							
								
								render/vulkan: replace wlr_vk_render_pass.srgb_pathway with two_pass  
							
							 
							
							... 
							
							
							
							The important bit here is whether this is using a single or two
sub-passes. The flag isn't used for anything else.
Preparation for an upcoming one-subpass codepath. 
							
						 
						
							2025-09-20 10:50:22 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								b2d09cdee9 
								
							 
						 
						
							
							
								
								render/vulkan: add wlr_vk_render_pass.render_buffer_out  
							
							 
							
							... 
							
							
							
							Simplifies the logic and prepares for a new render setup. 
							
						 
						
							2025-09-20 10:50:22 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								35eba5f2fe 
								
							 
						 
						
							
							
								
								render/vulkan: add wlr_vk_render_pass.render_setup  
							
							 
							
							... 
							
							
							
							Simplifies the logic and prepares for a new render setup. 
							
						 
						
							2025-09-20 10:50:22 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								a91f96b391 
								
							 
						 
						
							
							
								
								render/vulkan: introduce wlr_vk_render_buffer_out  
							
							 
							
							... 
							
							
							
							Holds common state for final output buffer targets. 
							
						 
						
							2025-09-20 10:50:22 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								54374b6fe6 
								
							 
						 
						
							
							
								
								render/vulkan: rename plain to two_pass  
							
							 
							
							... 
							
							
							
							We will introduce a new subpass without any post-processing step.
Rename "plain" so that there's no confusion. 
							
						 
						
							2025-09-20 10:50:22 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								ae85c31176 
								
							 
						 
						
							
							
								
								render/vulkan: add luminance multiplier for texture shader  
							
							 
							
							
							
						 
						
							2025-06-18 19:37:55 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								a8144088df 
								
							 
						 
						
							
							
								
								render/vulkan: add support for PQ for textures  
							
							 
							
							
							
						 
						
							2025-06-18 19:37:55 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								3a51a5c623 
								
							 
						 
						
							
							
								
								render/vulkan: add texture color transformation matrix  
							
							 
							
							
							
						 
						
							2025-06-18 19:37:55 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								56d95c2ecb 
								
							 
						 
						
							
							
								
								render/vulkan: introduce wlr_vk_frag_texture_pcr_data  
							
							 
							
							... 
							
							
							
							Contains UBOs for texture.frag. 
							
						 
						
							2025-06-18 19:37:55 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								8d1c6e42ac 
								
							 
						 
						
							
							
								
								render/vulkan: add support for texture transfer functions  
							
							 
							
							
							
						 
						
							2025-06-18 19:37:55 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								b1a9dab03e 
								
							 
						 
						
							
							
								
								render/vulkan: fix typo in wlr_vk_texture.views comment  
							
							 
							
							
							
						 
						
							2025-06-18 19:37:55 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								0ee0452af0 
								
							 
						 
						
							
							
								
								render/color, render/vulkan: add EXT_LINEAR to enum wlr_color_transfer_function  
							
							 
							
							
							
						 
						
							2025-06-18 19:37:55 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								7b6eec530c 
								
							 
						 
						
							
							
								
								render/vulkan: add luminance multipler for output shader  
							
							 
							
							
							
						 
						
							2025-06-18 00:11:33 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								8430a1922d 
								
							 
						 
						
							
							
								
								render/vulkan: add PQ inverse EOTF to output shader  
							
							 
							
							
							
						 
						
							2025-06-18 00:09:25 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								f3524de980 
								
							 
						 
						
							
							
								
								render, render/vulkan: add primaries to wlr_buffer_pass_options  
							
							 
							
							
							
						 
						
							2025-06-18 00:07:35 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								2ea0e386c4 
								
							 
						 
						
							
							
								
								render/vulkan: add color transformation matrix  
							
							 
							
							
							
						 
						
							2025-06-17 18:47:50 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								3665b53e29 
								
							 
						 
						
							
							
								
								render/color: replace COLOR_TRANSFORM_LUT_3D with COLOR_TRANSFORM_LCMS2  
							
							 
							
							... 
							
							
							
							Converting the LCMS2 transform to a 3D LUT early causes issues:
- It's a lossy process, the consumer will not be able to pick a
  3D LUT size on their own.
- It requires unnecessary conversions and allocations: an intermediate
  3D LUT is allocated, but the renderer already allocates one.
- It makes it harder to support arbitrary color transforms in the
  renderer, because each type needs to be handled differently.
Instead, expose a function to evaluate a color transform, and use
that to build the 3D LUT in the renderer. 
							
						 
						
							2025-06-16 09:06:10 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Kenny Levinsen 
								
							 
						 
						
							
							
							
							
								
							
							
								1f13bc72fe 
								
							 
						 
						
							
							
								
								render/vulkan: Garbage collect unused buffers  
							
							 
							
							... 
							
							
							
							Perform a primitive garbage collection of buffers that have not been
used in the past 10 seconds, an arbitrarily selected number.
As garbage collection also makes span buffer allocation happen much more
often, logging on allocation activity leads to a lot of log noise so get
rid of that while at it. 
							
						 
						
							2024-11-07 09:49:29 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								3bbfae73ae 
								
							 
						 
						
							
							
								
								render/vulkan: add support for explicit sync  
							
							 
							
							
							
						 
						
							2024-10-28 17:51:21 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Kirill Primak 
								
							 
						 
						
							
							
							
							
								
							
							
								67b88e46b0 
								
							 
						 
						
							
							
								
								Fix __VA_OPT__ macro invocations  
							
							 
							
							
							
						 
						
							2024-06-30 09:01:15 +03:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								3880ee15d7 
								
							 
						 
						
							
							
								
								Use standard __VA_OPT__ instead of GNU's ##__VA_ARGS__  
							
							 
							
							... 
							
							
							
							C23 has standardized a way to write variadic macros that accept
zero arguments:
https://open-std.org/JTC1/SC22/WG14/www/docs/n3033.htm 
Use that instead of the GNU extension when available. 
							
						 
						
							2024-06-27 18:13:05 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Kenny Levinsen 
								
							 
						 
						
							
							
							
							
								
							
							
								47c578945c 
								
							 
						 
						
							
							
								
								render/vulkan: Recycle memory maps for stage spans  
							
							 
							
							... 
							
							
							
							Remapping buffers on every use causes a lot of unwanted pagefaults.
Reuse the mapping to significantly speed up the memcpy. 
							
						 
						
							2024-06-24 15:55:10 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Manuel Stoeckl 
								
							 
						 
						
							
							
							
							
								
							
							
								ffdbfdbbbd 
								
							 
						 
						
							
							
								
								render/vulkan: add support for output color transforms  
							
							 
							
							
							
						 
						
							2024-04-26 17:17:36 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Manuel Stoeckl 
								
							 
						 
						
							
							
							
							
								
							
							
								e443434876 
								
							 
						 
						
							
							
								
								render/vulkan: create plain framebuffers on demand  
							
							 
							
							... 
							
							
							
							This change makes it possible to support both the direct srgb-format
pipeline and indirect (color-managed, or non-srgb-format) pipeline
for the same render buffer. 
							
						 
						
							2024-04-26 17:17:36 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Manuel Stoeckl 
								
							 
						 
						
							
							
							
							
								
							
							
								adbfd3c321 
								
							 
						 
						
							
							
								
								render/vulkan: add lut3d output shader option  
							
							 
							
							... 
							
							
							
							While a corresponding pipeline is created, it is not yet used. 
							
						 
						
							2024-04-26 17:17:36 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Manuel Stoeckl 
								
							 
						 
						
							
							
							
							
								
							
							
								c64144a39b 
								
							 
						 
						
							
							
								
								render/vulkan: add dummy 3d lookup table to output shader  
							
							 
							
							... 
							
							
							
							Later commits will add shader options that use a real 3d
lookup table. 
							
						 
						
							2024-04-26 17:17:36 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								85c1eda721 
								
							 
						 
						
							
							
								
								render: unify getter for texture formats  
							
							 
							
							... 
							
							
							
							Instead of having separate getters for shm formats and DMA-BUF
formats, use the same pattern as wlr_output_impl.get_primary_formats
with a single function which takes buffer caps as input. 
							
						 
						
							2024-04-21 11:27:29 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Manuel Stoeckl 
								
							 
						 
						
							
							
							
							
								
							
							
								d6859da3b4 
								
							 
						 
						
							
							
								
								render/vulkan: use _SRGB image view when possible  
							
							 
							
							... 
							
							
							
							This is the last of a set of commits which ensures that both textures
and render buffers can be accessed through _UNORM and _SRGB image
views. While _UNORM image views are not yet used for 8-bpc image
formats, they will be needed in the future to support color transforms
for both textures and render buffers. 
							
						 
						
							2023-12-04 15:13:31 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Manuel Stoeckl 
								
							 
						 
						
							
							
							
							
								
							
							
								566c413d8f 
								
							 
						 
						
							
							
								
								render/vulkan: constify vulkan_format_props_find_modifier  
							
							 
							
							
							
						 
						
							2023-12-04 15:13:31 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Manuel Stoeckl 
								
							 
						 
						
							
							
							
							
								
							
							
								fd4548bb93 
								
							 
						 
						
							
							
								
								render/vulkan: detect which _UNORM formats support _SRGB views  
							
							 
							
							
							
						 
						
							2023-12-04 15:13:31 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Manuel Stoeckl 
								
							 
						 
						
							
							
							
							
								
							
							
								eab89d6c76 
								
							 
						 
						
							
							
								
								render/vulkan: track and use _UNORM variants of _SRGB formats  
							
							 
							
							... 
							
							
							
							Later commits will start using _SRGB image views again,
where appropriate. 
							
						 
						
							2023-12-04 15:13:31 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Alexander Orzechowski 
								
							 
						 
						
							
							
							
							
								
							
							
								d3a339a03e 
								
							 
						 
						
							
							
								
								renderer: Drop buffer binding  
							
							 
							
							
							
						 
						
							2023-11-30 20:11:50 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Alexander Orzechowski 
								
							 
						 
						
							
							
							
							
								
							
							
								09f16b2a9c 
								
							 
						 
						
							
							
								
								render/vulkan: Implement texture_read_pixels  
							
							 
							
							
							
						 
						
							2023-11-30 19:56:54 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								9a0a4ce221 
								
							 
						 
						
							
							
								
								render/vulkan: drop current_command_buffer  
							
							 
							
							... 
							
							
							
							This was used by the legacy rendering API. Since begin()/end()
only need to set current_render_buffer and nothing else, we can
drop all of these bits. 
							
						 
						
							2023-11-28 12:56:30 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Manuel Stoeckl 
								
							 
						 
						
							
							
							
							
								
							
							
								e0adaaffb6 
								
							 
						 
						
							
							
								
								render/vulkan: constrain blend to output subpass to redrawn region  
							
							 
							
							... 
							
							
							
							This commit only applies to the render pass API. 
							
						 
						
							2023-10-05 11:45:32 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								65bbbbbf0c 
								
							 
						 
						
							
							
								
								render/vulkan: de-duplicate VkImageUsageFlags  
							
							 
							
							... 
							
							
							
							The flags passed to vkCreateImage() must match the flags used when
querying formats. Make this clearer by using the same variable. 
							
						 
						
							2023-09-09 23:32:28 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Alexander Orzechowski 
								
							 
						 
						
							
							
							
							
								
							
							
								6bd44c4fcd 
								
							 
						 
						
							
							
								
								renderer: Introduce wlr_scale_filter_mode  
							
							 
							
							
							
						 
						
							2023-06-19 12:25:38 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Alexander Orzechowski 
								
							 
						 
						
							
							
							
							
								
							
							
								3ee0f52e09 
								
							 
						 
						
							
							
								
								render/vulkan: Dynamically create texture views  
							
							 
							
							... 
							
							
							
							Now that we are dynamically creating pipeline layouts, we need separate
texture views for each pipeline layout we choose to use with a texture. 
							
						 
						
							2023-06-17 21:21:35 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Alexander Orzechowski 
								
							 
						 
						
							
							
							
							
								
							
							
								8a387b5558 
								
							 
						 
						
							
							
								
								render/vulkan: Dynamically create pipeline layouts  
							
							 
							
							... 
							
							
							
							These will happen lazily when pipelines get created. 
							
						 
						
							2023-06-17 21:21:31 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Alexander Orzechowski 
								
							 
						 
						
							
							
							
							
								
							
							
								3623005858 
								
							 
						 
						
							
							
								
								render/vulkan/pipeline_key: Add blending  
							
							 
							
							... 
							
							
							
							This will become necessary when we switch away from scissoring. For the
time being, this cleans things up a bit and allows for a trivial
blending implementation for textures when that comes. 
							
						 
						
							2023-06-16 19:20:04 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Alexander Orzechowski 
								
							 
						 
						
							
							
							
							
								
							
							
								9d31372930 
								
							 
						 
						
							
							
								
								render/vulkan: Handle quad pipeline through generic pipeline path  
							
							 
							
							
							
						 
						
							2023-06-16 19:20:03 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Alexander Orzechowski 
								
							 
						 
						
							
							
							
							
								
							
							
								97fdd57eb2 
								
							 
						 
						
							
							
								
								render/vulkan: Dynamically handle pipeline creation for textures  
							
							 
							
							... 
							
							
							
							If we ever wanted to handle dynamic state that requires new pipelines
such as using different texture filters those can be added here with more
ease. 
							
						 
						
							2023-06-16 19:09:23 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								0ba3ea3bcd 
								
							 
						 
						
							
							
								
								render/vulkan: improve error handling in render_pass_submit()  
							
							 
							
							... 
							
							
							
							Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3644  
							
						 
						
							2023-06-01 10:42:56 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								e07c77f846 
								
							 
						 
						
							
							
								
								render/vulkan: implement render pass API  
							
							 
							
							
							
						 
						
							2023-05-30 09:42:19 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								f60b367db7 
								
							 
						 
						
							
							
								
								render/vulkan: drop unused vulkan_has_extension()  
							
							 
							
							
							
						 
						
							2023-05-26 12:25:53 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								42eec38ab6 
								
							 
						 
						
							
							
								
								render/vulkan: drop unused vulkan_change_layout_queue()  
							
							 
							
							
							
						 
						
							2023-05-26 12:25:53 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								c7ae9dfaf8 
								
							 
						 
						
							
							
								
								render/vulkan: generalize YCbCr format support  
							
							 
							
							
							
						 
						
							2023-05-24 08:58:59 +00:00