1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
	// Setup Layout Binding for the Uniform buffer that contains "camera"
	VkDescriptorSetLayoutBinding layoutBinding = {};
	layoutBinding.binding = 0;
	layoutBinding.descriptorType = VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC;
	layoutBinding.descriptorCount = 1;
	layoutBinding.stageFlags = VK_SHADER_STAGE_VERTEX_BIT;

	// Setup the Description Layout Info
	VkDescriptorSetLayoutCreateInfo descLayoutInfo = {};
	descLayoutInfo.sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO;
	descLayoutInfo.pBindings = &layoutBinding;
	descLayoutInfo.bindingCount = 1;

	// Create Description Layout
	VkDescriptorSetLayout descLayout = {};
	res = vkCreateDescriptorSetLayout(_VkSystem.device, &descLayoutInfo, 0, &descLayout);
	if (res != VK_SUCCESS)
		return 1;




layout (binding = 0) uniform Block
{
// camera
vec2 camera;
// resolution (for scaling from pixels to NDC)
//vec2 pixelsToNdc;
};