private CommandPool CreateCommandPool()
        {
            var poolCreateInfo = new CommandPoolCreateInfo(
                flags: CommandPoolCreateFlags.CommandPoolCreateResetCommandBufferBit,
                queueFamilyIndex: this.QueueIndices.GraphicsFamily.Value);

            CommandPool pool;
            var         res = VkApi.CreateCommandPool(this.Device, &poolCreateInfo, null, &pool);

            if (res != Result.Success)
            {
                throw new VMASharp.VulkanResultException("Command Pool Creation Failed!", res);
            }

            return(pool);
        }