public void CmdCopyImageToBuffer(Image srcImage, ImageLayout srcImageLayout, VulkanBuffer dstBuffer, BufferImageCopy?pRegion) { unsafe { BufferImageCopy valpRegion = pRegion ?? default(BufferImageCopy); BufferImageCopy *ptrpRegion = pRegion != null ? &valpRegion : (BufferImageCopy *)IntPtr.Zero; Interop.NativeMethods.vkCmdCopyImageToBuffer(this.m, srcImage != null ? srcImage.m : default(UInt64), srcImageLayout, dstBuffer != null ? dstBuffer.m : default(UInt64), (UInt32)(pRegion != null ? 1 : 0), ptrpRegion); } }
public void CmdCopyBufferToImage(VulkanBuffer srcBuffer, Image dstImage, ImageLayout dstImageLayout, BufferImageCopy?pRegion) { unsafe { BufferImageCopy valpRegion = pRegion ?? default(BufferImageCopy); BufferImageCopy *ptrpRegion = pRegion != null ? &valpRegion : (BufferImageCopy *)IntPtr.Zero; Interop.NativeMethods.vkCmdCopyBufferToImage(this.m, srcBuffer != null ? srcBuffer.m : default(UInt64), dstImage != null ? dstImage.m : default(UInt64), dstImageLayout, (UInt32)(pRegion != null ? 1 : 0), ptrpRegion); } }
public void CmdCopyBuffer(VulkanBuffer srcBuffer, VulkanBuffer dstBuffer, BufferCopy?pRegion) { unsafe { BufferCopy valpRegion = pRegion ?? default(BufferCopy); BufferCopy *ptrpRegion = pRegion != null ? &valpRegion : (BufferCopy *)IntPtr.Zero; Interop.NativeMethods.vkCmdCopyBuffer(this.m, srcBuffer != null ? srcBuffer.m : default(UInt64), dstBuffer != null ? dstBuffer.m : default(UInt64), (UInt32)(pRegion != null ? 1 : 0), ptrpRegion); } }
public void CmdBindVertexBuffer(UInt32 firstBinding, VulkanBuffer pBuffer, DeviceSize pOffset) { unsafe { fixed(UInt64 *ptrpBuffer = &pBuffer.m) { Interop.NativeMethods.vkCmdBindVertexBuffers(this.m, firstBinding, (UInt32)(pOffset != null ? 1 : 0), ptrpBuffer, &pOffset); } } }
public void CmdCopyImageToBuffer(Image srcImage, ImageLayout srcImageLayout, VulkanBuffer dstBuffer, BufferImageCopy[] pRegions) { unsafe { var arraypRegions = pRegions == null ? IntPtr.Zero : Marshal.AllocHGlobal(pRegions.Length * sizeof(BufferImageCopy)); var lenpRegions = pRegions == null ? 0 : pRegions.Length; if (pRegions != null) { for (int i = 0; i < pRegions.Length; i++) { ((BufferImageCopy *)arraypRegions) [i] = (pRegions [i]); } } Interop.NativeMethods.vkCmdCopyImageToBuffer(this.m, srcImage != null ? srcImage.m : default(UInt64), srcImageLayout, dstBuffer != null ? dstBuffer.m : default(UInt64), (uint)lenpRegions, (BufferImageCopy *)arraypRegions); Marshal.FreeHGlobal(arraypRegions); } }
public void CmdWriteBufferMarkerAMD(PipelineStageFlags pipelineStage, VulkanBuffer dstBuffer, DeviceSize dstOffset, UInt32 marker) { unsafe { Interop.NativeMethods.vkCmdWriteBufferMarkerAMD(this.m, pipelineStage, dstBuffer != null ? dstBuffer.m : default(UInt64), dstOffset, marker); } }
public void CmdDrawIndexedIndirectCountAMD(VulkanBuffer buffer, DeviceSize offset, VulkanBuffer countBuffer, DeviceSize countBufferOffset, UInt32 maxDrawCount, UInt32 stride) { unsafe { Interop.NativeMethods.vkCmdDrawIndexedIndirectCountAMD(this.m, buffer != null ? buffer.m : default(UInt64), offset, countBuffer != null ? countBuffer.m : default(UInt64), countBufferOffset, maxDrawCount, stride); } }
public void CmdCopyQueryPoolResults(QueryPool queryPool, UInt32 firstQuery, UInt32 queryCount, VulkanBuffer dstBuffer, DeviceSize dstOffset, DeviceSize stride, QueryResultFlags flags = (QueryResultFlags)0) { unsafe { Interop.NativeMethods.vkCmdCopyQueryPoolResults(this.m, queryPool != null ? queryPool.m : default(UInt64), firstQuery, queryCount, dstBuffer != null ? dstBuffer.m : default(UInt64), dstOffset, stride, flags); } }
public void CmdFillBuffer(VulkanBuffer dstBuffer, DeviceSize dstOffset, DeviceSize size, UInt32 data) { unsafe { Interop.NativeMethods.vkCmdFillBuffer(this.m, dstBuffer != null ? dstBuffer.m : default(UInt64), dstOffset, size, data); } }
public void CmdUpdateBuffer(VulkanBuffer dstBuffer, DeviceSize dstOffset, DeviceSize dataSize, IntPtr pData) { unsafe { Interop.NativeMethods.vkCmdUpdateBuffer(this.m, dstBuffer != null ? dstBuffer.m : default(UInt64), dstOffset, dataSize, pData); } }
public void CmdDispatchIndirect(VulkanBuffer buffer, DeviceSize offset) { unsafe { Interop.NativeMethods.vkCmdDispatchIndirect(this.m, buffer != null ? buffer.m : default(UInt64), offset); } }
public void CmdDrawIndexedIndirect(VulkanBuffer buffer, DeviceSize offset, UInt32 drawCount, UInt32 stride) { unsafe { Interop.NativeMethods.vkCmdDrawIndexedIndirect(this.m, buffer != null ? buffer.m : default(UInt64), offset, drawCount, stride); } }
public void CmdBindIndexBuffer(VulkanBuffer buffer, DeviceSize offset, IndexType indexType) { unsafe { Interop.NativeMethods.vkCmdBindIndexBuffer(this.m, buffer != null ? buffer.m : default(UInt64), offset, indexType); } }