parent
							
								
									1a69774a71
								
							
						
					
					
						commit
						2eda8f2493
					
				| 
						 | 
					@ -838,20 +838,17 @@ void VulkanExample::getEnabledFeatures()
 | 
				
			||||||
		VK_CHECK_RESULT(vkCreateDescriptorPool(device, &descriptorPoolInfo, nullptr, &descriptorPool));
 | 
							VK_CHECK_RESULT(vkCreateDescriptorPool(device, &descriptorPoolInfo, nullptr, &descriptorPool));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		// Descriptor set layouts
 | 
							// Descriptor set layouts
 | 
				
			||||||
		
 | 
							VkDescriptorSetLayoutBinding    setLayoutBinding{};
 | 
				
			||||||
		VkDescriptorSetLayoutCreateInfo descriptorSetLayoutCI = vks::initializers::descriptorSetLayoutCreateInfo(setLayoutBinding);
 | 
							VkDescriptorSetLayoutCreateInfo descriptorSetLayoutCI = vks::initializers::descriptorSetLayoutCreateInfo(&setLayoutBinding, 1);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		// Descriptor set layout for passing matrices
 | 
							// Descriptor set layout for passing matrices
 | 
				
			||||||
 | 
					 | 
				
			||||||
		setLayoutBinding = vks::initializers::descriptorSetLayoutBinding(VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, VK_SHADER_STAGE_VERTEX_BIT, 0);
 | 
							setLayoutBinding = vks::initializers::descriptorSetLayoutBinding(VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, VK_SHADER_STAGE_VERTEX_BIT, 0);
 | 
				
			||||||
		VK_CHECK_RESULT(vkCreateDescriptorSetLayout(device, &descriptorSetLayoutCI, nullptr, &descriptorSetLayouts.matrices));
 | 
							VK_CHECK_RESULT(vkCreateDescriptorSetLayout(device, &descriptorSetLayoutCI, nullptr, &descriptorSetLayouts.matrices));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		// Descriptor set layout for passing material textures
 | 
							// Descriptor set layout for passing material textures
 | 
				
			||||||
		VkDescriptorSetLayoutBinding setLayoutBinding = vks::initializers::descriptorSetLayoutBinding(VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_SHADER_STAGE_FRAGMENT_BIT, 0);
 | 
							setLayoutBinding = vks::initializers::descriptorSetLayoutBinding(VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_SHADER_STAGE_FRAGMENT_BIT, 0);
 | 
				
			||||||
		descriptorSetLayoutCI = vks::initializers::descriptorSetLayoutCreateInfo(&setLayoutBinding, 1);
 | 
					 | 
				
			||||||
		VK_CHECK_RESULT(vkCreateDescriptorSetLayout(device, &descriptorSetLayoutCI, nullptr, &descriptorSetLayouts.textures));
 | 
							VK_CHECK_RESULT(vkCreateDescriptorSetLayout(device, &descriptorSetLayoutCI, nullptr, &descriptorSetLayouts.textures));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
		// Descriptor set layout for passing skin joint matrices
 | 
							// Descriptor set layout for passing skin joint matrices
 | 
				
			||||||
		setLayoutBinding = vks::initializers::descriptorSetLayoutBinding(VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, VK_SHADER_STAGE_VERTEX_BIT, 0);
 | 
							setLayoutBinding = vks::initializers::descriptorSetLayoutBinding(VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, VK_SHADER_STAGE_VERTEX_BIT, 0);
 | 
				
			||||||
		VK_CHECK_RESULT(vkCreateDescriptorSetLayout(device, &descriptorSetLayoutCI, nullptr, &descriptorSetLayouts.jointMatrices));
 | 
							VK_CHECK_RESULT(vkCreateDescriptorSetLayout(device, &descriptorSetLayoutCI, nullptr, &descriptorSetLayouts.jointMatrices));
 | 
				
			||||||
| 
						 | 
					@ -977,7 +974,7 @@ void VulkanExample::getEnabledFeatures()
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		shaderData.values.projection = camera.matrices.perspective;
 | 
							shaderData.values.projection = camera.matrices.perspective;
 | 
				
			||||||
		shaderData.values.model = camera.matrices.view;
 | 
							shaderData.values.model = camera.matrices.view;
 | 
				
			||||||
		shaderData.values.viewPos = camera.viewPos;
 | 
							
 | 
				
			||||||
		memcpy(shaderData.buffer.mapped, &shaderData.values, sizeof(shaderData.values));
 | 
							memcpy(shaderData.buffer.mapped, &shaderData.values, sizeof(shaderData.values));
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1000,7 +997,7 @@ void VulkanExample::getEnabledFeatures()
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		if (!paused)
 | 
							if (!paused)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			glTFModel.updateAnimation(frameTimer,shaderData.skinSSBO);
 | 
								glTFModel.updateAnimation(frameTimer,shaderData.buffer);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -208,7 +208,6 @@ public:
 | 
				
			||||||
			glm::vec4 lightPos = glm::vec4(5.0f, 5.0f, 5.0f, 1.0f);
 | 
								glm::vec4 lightPos = glm::vec4(5.0f, 5.0f, 5.0f, 1.0f);
 | 
				
			||||||
			glm::vec4 viewPos;
 | 
								glm::vec4 viewPos;
 | 
				
			||||||
		} values;
 | 
							} values;
 | 
				
			||||||
		vks::Buffer skinSSBO;
 | 
					 | 
				
			||||||
	} shaderData;
 | 
						} shaderData;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	struct Pipelines {
 | 
						struct Pipelines {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue