# CopyTextureSupport

> Support for various Graphics.CopyTexture cases.

## Definition

* **Type:** Enum
* **Namespace:** [UnityEngine.Rendering](/engine/6000.7/script-reference/unityengine/rendering.md)
* **Assembly:** UnityEngine.CoreModule

```csharp
[Flags]
public enum CopyTextureSupport
```

## Remarks

Most modern platforms and graphics APIs support quite flexible texture copy (e.g. copy from a [RenderTexture](/engine/6000.7/script-reference/unityengine/rendertexture.md) into a [Cubemap](/engine/6000.7/script-reference/unityengine/cubemap.md) face). However some older systems might not support certain parts of texture copy functionality. This enum indicates support for this. Use [SystemInfo.copyTextureSupport](/engine/6000.7/script-reference/unityengine/systeminfo/copytexturesupport.md) to check for support before calling [Graphics.CopyTexture](/engine/6000.7/script-reference/unityengine/graphics/copytexture.md).

Direct3D11, DirectD12, Metal and PS4 platforms generally support flexible texture copy (all CopyTextureSupport flags are set).

OpenGL supports flexible texture copy since OpenGL 4.3; OpenGL ES supports flexible texture copy since OpenGL ES 3.1 with Android Extension Pack; on earlier versions there's no copy support right now ([CopyTextureSupport.None](/engine/6000.7/script-reference/unityengine/rendering/copytexturesupport/none.md)).

Direct3D9 systems have somewhat limited texture copy support (can't copy 3D textures, and can't copy between textures and render textures).

WebGL currently do not have texture copy support ([CopyTextureSupport.None](/engine/6000.7/script-reference/unityengine/rendering/copytexturesupport/none.md)).

Additional Resources: [Graphics.CopyTexture](/engine/6000.7/script-reference/unityengine/graphics/copytexture.md), [SystemInfo.copyTextureSupport](/engine/6000.7/script-reference/unityengine/systeminfo/copytexturesupport.md).

## Fields

| Value                                                                                                        | Description                                                                                                                                                                       |
| ------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Basic](/engine/6000.7/script-reference/unityengine/rendering/copytexturesupport/basic.md)                   | Basic [Graphics.CopyTexture](/engine/6000.7/script-reference/unityengine/graphics/copytexture.md) support.                                                                        |
| [Copy3D](/engine/6000.7/script-reference/unityengine/rendering/copytexturesupport/copy3d.md)                 | Support for [Texture3D](/engine/6000.7/script-reference/unityengine/texture3d.md) in [Graphics.CopyTexture](/engine/6000.7/script-reference/unityengine/graphics/copytexture.md). |
| [DifferentTypes](/engine/6000.7/script-reference/unityengine/rendering/copytexturesupport/differenttypes.md) | Support for [Graphics.CopyTexture](/engine/6000.7/script-reference/unityengine/graphics/copytexture.md) between different texture types.                                          |
| [None](/engine/6000.7/script-reference/unityengine/rendering/copytexturesupport/none.md)                     | No support for [Graphics.CopyTexture](/engine/6000.7/script-reference/unityengine/graphics/copytexture.md).                                                                       |
| [RTToTexture](/engine/6000.7/script-reference/unityengine/rendering/copytexturesupport/rttotexture.md)       | Support for RenderTexture to Texture copies in [Graphics.CopyTexture](/engine/6000.7/script-reference/unityengine/graphics/copytexture.md).                                       |
| [TextureToRT](/engine/6000.7/script-reference/unityengine/rendering/copytexturesupport/texturetort.md)       | Support for Texture to RenderTexture copies in [Graphics.CopyTexture](/engine/6000.7/script-reference/unityengine/graphics/copytexture.md).                                       |
