···78//! How many distortion images we have, one for each channel (3 rgb) and per view, total 6.
79#define RENDER_DISTORTION_NUM_IMAGES (6)
800000008182/*
83 *
···144145 VkShaderModule layer_vert;
146 VkShaderModule layer_frag;
00000000147};
148149/*!
···837 struct xrt_normalized_rect pre_transform;
838 struct xrt_matrix_4x4 transform;
839};
00000000000000000000840841/*!
842 * @name Drawing functions
···78//! How many distortion images we have, one for each channel (3 rgb) and per view, total 6.
79#define RENDER_DISTORTION_NUM_IMAGES (6)
8081+//! Which binding does the layer projection and quad shader has it's UBO on.
82+#define RENDER_BINDING_LAYER_SHARED_UBO 0
83+84+//! Which binding does the shared layer fragment shader has it's source on.
85+#define RENDER_BINDING_LAYER_SHARED_SRC 1
86+8788/*
89 *
···150151 VkShaderModule layer_vert;
152 VkShaderModule layer_frag;
153+154+ /*
155+ * New layer renderer.
156+ */
157+158+ VkShaderModule layer_projection_vert;
159+ VkShaderModule layer_quad_vert;
160+ VkShaderModule layer_shared_frag;
161};
162163/*!
···851 struct xrt_normalized_rect pre_transform;
852 struct xrt_matrix_4x4 transform;
853};
854+855+/*!
856+ * UBO data that is sent to the layer projection shader.
857+ */
858+struct render_gfx_layer_projection_data
859+{
860+ struct xrt_normalized_rect post_transform;
861+ struct xrt_normalized_rect to_tanget;
862+ struct xrt_matrix_4x4 mvp;
863+};
864+865+/*!
866+ * UBO data that is sent to the layer quad shader.
867+ */
868+struct render_gfx_layer_quad_data
869+{
870+ struct xrt_normalized_rect post_transform;
871+ struct xrt_matrix_4x4 mvp;
872+};
873+874875/*!
876 * @name Drawing functions