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