<!--
{
  "availability" : [
    "iOS: 26.0.0 -",
    "iPadOS: 26.0.0 -",
    "macCatalyst: -",
    "macOS: 26.0.0 -",
    "tvOS: 26.0.0 -",
    "visionOS: 26.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Metal",
  "identifier" : "/documentation/Metal/MTLResourceViewPool/copyResourceViews(sourcePool:sourceRange:destinationIndex:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "Metal"
    ],
    "preciseIdentifier" : "s:So19MTLResourceViewPoolP5MetalE17copyResourceViews06sourceC00H5Range16destinationIndexSo0A2IDVSoAA_p_SnySiGSitF"
  },
  "title" : "copyResourceViews(sourcePool:sourceRange:destinationIndex:)"
}
-->

# copyResourceViews(sourcePool:sourceRange:destinationIndex:)

Copies a range of resource views from a source view pool to a destination location in this view pool.

```
func copyResourceViews(sourcePool: any MTLResourceViewPool, sourceRange: Range<Int>, destinationIndex: Int) -> MTLResourceID
```

## Parameters

`sourcePool`

resource view pool from which to copy resource views.

`sourceRange`

The range in the source resource view pool to copy.

`destinationIndex`

The starting index in this destination view pool into which to copy the source range of resource views.

## Return Value

The [`MTLResourceID`](/documentation/Metal/MTLResourceID) of the resource view corresponding to `destinationIndex` of the copy in this resource view pool.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)