Encapsulates a GPU device resource created by the application.
On visionOS, resources must be allocated in shared memory that can be used by the renderer process.
Once a device resource is in use by the renderer, changing its contents is unsafe and undefined.
Creates a new ``LowLevelDeviceResource`` from the specified ``IOSurface``.
- Parameter textureDescriptor: A description of the properties for the texture.
- Parameter iosurface: The underlying IOSurface for this memory resource.
- Parameter plane: The plane within the IOSurface to use.
- Throws: If a the texture descriptor is incompatible with the specified IOSurface
Creates a new ``LowLevelDeviceResource`` from the specified Metal texture.
This is not available on visionOS; device resources on this platform must be initialized
from a shared texture using `init(sharedTextureHandle:)` instead.
- Parameter texture: The underlying texture for this memory resource.