This repository was archived by the owner on Aug 19, 2019. It is now read-only.
Description The function here looks wrong:
https://github.com/KhronosGroup/Vulkan-Samples/blob/master/samples/apps/atw/scenes/scene_perf.h#L1706
The UBO buffers are being copied from a wrong memory in case of multiview. I think that it should look like this:
static void ksPerfScene_UpdateBuffers( ksGpuCommandBuffer * commandBuffer, ksPerfScene * scene, const ksViewState * viewState, const int eye )
{
ksMatrix4x4f * sceneMatrices = NULL;
ksGpuBuffer * sceneMatricesBuffer = ksGpuCommandBuffer_MapBuffer( commandBuffer, &scene->sceneMatrices, (void **)&sceneMatrices );
const int count = ( eye == 2 ) ? 2 : 1;
const int offset = ( eye == 2) ? 0 : eye;
memcpy( sceneMatrices + 0 * count, &viewState->viewMatrix[offset], count * sizeof( ksMatrix4x4f ) );
memcpy( sceneMatrices + 1 * count, &viewState->projectionMatrix[offset], count * sizeof( ksMatrix4x4f ) );
ksGpuCommandBuffer_UnmapBuffer( commandBuffer, &scene->sceneMatrices, sceneMatricesBuffer, KS_GPU_BUFFER_UNMAP_TYPE_COPY_BACK );
}
Reactions are currently unavailable
The function here looks wrong:
https://github.com/KhronosGroup/Vulkan-Samples/blob/master/samples/apps/atw/scenes/scene_perf.h#L1706
The UBO buffers are being copied from a wrong memory in case of multiview. I think that it should look like this:
static void ksPerfScene_UpdateBuffers( ksGpuCommandBuffer * commandBuffer, ksPerfScene * scene, const ksViewState * viewState, const int eye )
{
ksMatrix4x4f * sceneMatrices = NULL;
ksGpuBuffer * sceneMatricesBuffer = ksGpuCommandBuffer_MapBuffer( commandBuffer, &scene->sceneMatrices, (void **)&sceneMatrices );
const int count = ( eye == 2 ) ? 2 : 1;
const int offset = ( eye == 2) ? 0 : eye;
memcpy( sceneMatrices + 0 * count, &viewState->viewMatrix[offset], count * sizeof( ksMatrix4x4f ) );
memcpy( sceneMatrices + 1 * count, &viewState->projectionMatrix[offset], count * sizeof( ksMatrix4x4f ) );
ksGpuCommandBuffer_UnmapBuffer( commandBuffer, &scene->sceneMatrices, sceneMatricesBuffer, KS_GPU_BUFFER_UNMAP_TYPE_COPY_BACK );
}