# CubemapArray

> Create a new cubemap array.

## Definition

* **Type:** Constructor
* **Namespace:** [UnityEngine](/engine/6000.6/script-reference/unityengine.md)
* **Assembly:** UnityEngine.CoreModule

## CubemapArray(int, int, GraphicsFormat, TextureCreationFlags)

Create a new cubemap array.

```csharp
public CubemapArray(int width, int cubemapCount, GraphicsFormat format, TextureCreationFlags flags)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Width of each cubemap face.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Number of elements in the cubemap array.**** (\[GraphicsFormat]\(/engine/6000.6/script-reference/unityengine/experimental/rendering/graphicsformat)): **** (TextureCreationFlags):&#x20;

### Remarks

Enable `createUninitialized` to make the texture reference uninitialized data (both on the CPU and GPU). When overriding all texels, this can lead to improved performance and reduced memory usage during construction. Note that sampling an uninitialized texture gives unpredictable values.

Usually you will want to set the colors of the cubemaps after creating it. Use [CubemapArray.SetPixels](/engine/6000.6/script-reference/unityengine/cubemaparray/setpixels.md), [CubemapArray.SetPixels32](/engine/6000.6/script-reference/unityengine/cubemaparray/setpixels32.md) or [Graphics.CopyTexture](/engine/6000.6/script-reference/unityengine/graphics/copytexture.md) functions for that.

Note that this class does not support CubemapArray creation with a Crunch compression [TextureFormat](/engine/6000.6/script-reference/unityengine/textureformat.md).

## CubemapArray(int, int, TextureFormat, int, bool, bool)

Create a new cubemap array.

```csharp
public CubemapArray(int width, int cubemapCount, TextureFormat textureFormat, int mipCount, bool linear, bool createUninitialized)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Width of each cubemap face.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Number of elements in the cubemap array.**** (\[TextureFormat]\(/engine/6000.6/script-reference/unityengine/textureformat)): Format of the cubemaps.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Amount of mipmaps to generate.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Does the texture contain non-color data (i.e. don't do any color space conversions when sampling)? Default is false.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Use this flag to create the texture with uninitialized data. When overriding all texels anyway, this can lead to improved performance and reduced memory usage.

### Remarks

Enable `createUninitialized` to make the texture reference uninitialized data (both on the CPU and GPU). When overriding all texels, this can lead to improved performance and reduced memory usage during construction. Note that sampling an uninitialized texture gives unpredictable values.

Usually you will want to set the colors of the cubemaps after creating it. Use [CubemapArray.SetPixels](/engine/6000.6/script-reference/unityengine/cubemaparray/setpixels.md), [CubemapArray.SetPixels32](/engine/6000.6/script-reference/unityengine/cubemaparray/setpixels32.md) or [Graphics.CopyTexture](/engine/6000.6/script-reference/unityengine/graphics/copytexture.md) functions for that.

Note that this class does not support CubemapArray creation with a Crunch compression [TextureFormat](/engine/6000.6/script-reference/unityengine/textureformat.md).

## CubemapArray(int, int, TextureFormat, int, bool)

Create a new cubemap array.

```csharp
public CubemapArray(int width, int cubemapCount, TextureFormat textureFormat, int mipCount, bool linear)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Width of each cubemap face.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Number of elements in the cubemap array.**** (\[TextureFormat]\(/engine/6000.6/script-reference/unityengine/textureformat)): Format of the cubemaps.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Amount of mipmaps to generate.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Does the texture contain non-color data (i.e. don't do any color space conversions when sampling)? Default is false.

### Remarks

Enable `createUninitialized` to make the texture reference uninitialized data (both on the CPU and GPU). When overriding all texels, this can lead to improved performance and reduced memory usage during construction. Note that sampling an uninitialized texture gives unpredictable values.

Usually you will want to set the colors of the cubemaps after creating it. Use [CubemapArray.SetPixels](/engine/6000.6/script-reference/unityengine/cubemaparray/setpixels.md), [CubemapArray.SetPixels32](/engine/6000.6/script-reference/unityengine/cubemaparray/setpixels32.md) or [Graphics.CopyTexture](/engine/6000.6/script-reference/unityengine/graphics/copytexture.md) functions for that.

Note that this class does not support CubemapArray creation with a Crunch compression [TextureFormat](/engine/6000.6/script-reference/unityengine/textureformat.md).

## CubemapArray(int, int, TextureFormat, bool, bool, bool)

Create a new cubemap array.

```csharp
public CubemapArray(int width, int cubemapCount, TextureFormat textureFormat, bool mipChain, bool linear, bool createUninitialized)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Width of each cubemap face.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Number of elements in the cubemap array.**** (\[TextureFormat]\(/engine/6000.6/script-reference/unityengine/textureformat)): Format of the cubemaps.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Should mipmaps be generated ?**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Does the texture contain non-color data (i.e. don't do any color space conversions when sampling)? Default is false.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Use this flag to create the texture with uninitialized data. When overriding all texels anyway, this can lead to improved performance and reduced memory usage.

### Remarks

Enable `createUninitialized` to make the texture reference uninitialized data (both on the CPU and GPU). When overriding all texels, this can lead to improved performance and reduced memory usage during construction. Note that sampling an uninitialized texture gives unpredictable values.

Usually you will want to set the colors of the cubemaps after creating it. Use [CubemapArray.SetPixels](/engine/6000.6/script-reference/unityengine/cubemaparray/setpixels.md), [CubemapArray.SetPixels32](/engine/6000.6/script-reference/unityengine/cubemaparray/setpixels32.md) or [Graphics.CopyTexture](/engine/6000.6/script-reference/unityengine/graphics/copytexture.md) functions for that.

Note that this class does not support CubemapArray creation with a Crunch compression [TextureFormat](/engine/6000.6/script-reference/unityengine/textureformat.md).

## CubemapArray(int, int, TextureFormat, bool)

Create a new cubemap array.

```csharp
public CubemapArray(int width, int cubemapCount, TextureFormat textureFormat, bool mipChain)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Width of each cubemap face.**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): Number of elements in the cubemap array.**** (\[TextureFormat]\(/engine/6000.6/script-reference/unityengine/textureformat)): Format of the cubemaps.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Should mipmaps be generated ?

### Remarks

Enable `createUninitialized` to make the texture reference uninitialized data (both on the CPU and GPU). When overriding all texels, this can lead to improved performance and reduced memory usage during construction. Note that sampling an uninitialized texture gives unpredictable values.

Usually you will want to set the colors of the cubemaps after creating it. Use [CubemapArray.SetPixels](/engine/6000.6/script-reference/unityengine/cubemaparray/setpixels.md), [CubemapArray.SetPixels32](/engine/6000.6/script-reference/unityengine/cubemaparray/setpixels32.md) or [Graphics.CopyTexture](/engine/6000.6/script-reference/unityengine/graphics/copytexture.md) functions for that.

Note that this class does not support CubemapArray creation with a Crunch compression [TextureFormat](/engine/6000.6/script-reference/unityengine/textureformat.md).
