public void CmdExecuteCommands(IMgCommandBuffer[] pCommandBuffers) { var handles = new IntPtr[pCommandBuffers.Length]; var bufferCount = (uint)pCommandBuffers.Length; for (uint i = 0; i < bufferCount; ++i) { var bBuffer = (VkCommandBuffer)pCommandBuffers[i]; Debug.Assert(bBuffer != null); handles[i] = bBuffer.Handle; } Interops.vkCmdExecuteCommands(this.Handle, bufferCount, handles); }