Add inverseModelView UBO to fix texturecubemap sample
This commit is contained in:
parent
13c081664e
commit
e3234db041
11 changed files with 42 additions and 25 deletions
|
|
@ -55,6 +55,7 @@ public:
|
|||
struct UBOVS {
|
||||
glm::mat4 projection;
|
||||
glm::mat4 modelView;
|
||||
glm::mat4 inverseModelview;
|
||||
float lodBias = 0.0f;
|
||||
} uboVS;
|
||||
|
||||
|
|
@ -440,10 +441,10 @@ public:
|
|||
{
|
||||
std::vector<VkDescriptorSetLayoutBinding> setLayoutBindings =
|
||||
{
|
||||
// Binding 0 : Vertex shader uniform buffer
|
||||
// Binding 0 : Uniform buffer
|
||||
vks::initializers::descriptorSetLayoutBinding(
|
||||
VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER,
|
||||
VK_SHADER_STAGE_VERTEX_BIT,
|
||||
VK_SHADER_STAGE_VERTEX_BIT | VK_SHADER_STAGE_FRAGMENT_BIT,
|
||||
0),
|
||||
// Binding 1 : Fragment shader image sampler
|
||||
vks::initializers::descriptorSetLayoutBinding(
|
||||
|
|
@ -620,7 +621,7 @@ public:
|
|||
// Prepare and initialize uniform buffer containing shader uniforms
|
||||
void prepareUniformBuffers()
|
||||
{
|
||||
// Objact vertex shader uniform buffer
|
||||
// Object vertex shader uniform buffer
|
||||
VK_CHECK_RESULT(vulkanDevice->createBuffer(
|
||||
VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT,
|
||||
VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT | VK_MEMORY_PROPERTY_HOST_COHERENT_BIT,
|
||||
|
|
@ -646,6 +647,7 @@ public:
|
|||
// 3D object
|
||||
uboVS.projection = camera.matrices.perspective;
|
||||
uboVS.modelView = camera.matrices.view;
|
||||
uboVS.inverseModelview = glm::inverse(camera.matrices.view);
|
||||
memcpy(uniformBuffers.object.mapped, &uboVS, sizeof(uboVS));
|
||||
// Skybox
|
||||
uboVS.modelView = camera.matrices.view;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue