Пример #1
0
        public virtual void CopyTileMappings(
            ID3D12Resource pDstResource,
            ref D3D12_TILED_RESOURCE_COORDINATE pDstRegionStartCoordinate,
            ID3D12Resource pSrcResource,
            ref D3D12_TILED_RESOURCE_COORDINATE pSrcRegionStartCoordinate,
            ref D3D12_TILE_REGION_SIZE pRegionSize,
            D3D12_TILE_MAPPING_FLAGS Flags
            )
        {
            var fp = GetFunctionPointer(9);

            if (m_CopyTileMappingsFunc == null)
            {
                m_CopyTileMappingsFunc = (CopyTileMappingsFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(CopyTileMappingsFunc));
            }

            m_CopyTileMappingsFunc(m_ptr, pDstResource != null ? pDstResource.Ptr : IntPtr.Zero, ref pDstRegionStartCoordinate, pSrcResource != null ? pSrcResource.Ptr : IntPtr.Zero, ref pSrcRegionStartCoordinate, ref pRegionSize, Flags);
        }
        public virtual void CopyTiles(
            ID3D12Resource pTiledResource,
            ref D3D12_TILED_RESOURCE_COORDINATE pTileRegionStartCoordinate,
            ref D3D12_TILE_REGION_SIZE pTileRegionSize,
            ID3D12Resource pBuffer,
            ulong BufferStartOffsetInBytes,
            D3D12_TILE_COPY_FLAGS Flags
            )
        {
            var fp = GetFunctionPointer(18);

            if (m_CopyTilesFunc == null)
            {
                m_CopyTilesFunc = (CopyTilesFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(CopyTilesFunc));
            }

            m_CopyTilesFunc(m_ptr, pTiledResource != null ? pTiledResource.Ptr : IntPtr.Zero, ref pTileRegionStartCoordinate, ref pTileRegionSize, pBuffer != null ? pBuffer.Ptr : IntPtr.Zero, BufferStartOffsetInBytes, Flags);
        }
Пример #3
0
        public virtual void UpdateTileMappings(
            ID3D12Resource pResource,
            uint NumResourceRegions,
            ref D3D12_TILED_RESOURCE_COORDINATE pResourceRegionStartCoordinates,
            ref D3D12_TILE_REGION_SIZE pResourceRegionSizes,
            ID3D12Heap pHeap,
            uint NumRanges,
            ref D3D12_TILE_RANGE_FLAGS pRangeFlags,
            ref uint pHeapRangeStartOffsets,
            ref uint pRangeTileCounts,
            D3D12_TILE_MAPPING_FLAGS Flags
            )
        {
            var fp = GetFunctionPointer(8);

            if (m_UpdateTileMappingsFunc == null)
            {
                m_UpdateTileMappingsFunc = (UpdateTileMappingsFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(UpdateTileMappingsFunc));
            }

            m_UpdateTileMappingsFunc(m_ptr, pResource != null ? pResource.Ptr : IntPtr.Zero, NumResourceRegions, ref pResourceRegionStartCoordinates, ref pResourceRegionSizes, pHeap != null ? pHeap.Ptr : IntPtr.Zero, NumRanges, ref pRangeFlags, ref pHeapRangeStartOffsets, ref pRangeTileCounts, Flags);
        }