---
title: "init(colorGradientFrom:to:name:textureDimensions:)"
framework: modelio
role: symbol
role_heading: Initializer
path: "modelio/mdlcolorswatchtexture/init(colorgradientfrom:to:name:texturedimensions:)"
---

# init(colorGradientFrom:to:name:textureDimensions:)

Initializes a texture that creates a vertical gradient between two colors.

## Declaration

```swift
init(colorGradientFrom color1: CGColor, to color2: CGColor, name: String?, textureDimensions: vector_int2)
```

## Parameters

- `color1`: The color at the top of the gradient.
- `color2`: The color at the bottom of the gradient.
- `name`: The doc://com.apple.modelio/documentation/ModelIO/MDLNamed/name property for the new texture object.
- `textureDimensions`: The texel dimensions (width and height) of the texture image.

## Return Value

Return Value A new color swatch texture object.

## Discussion

Discussion Model I/O interpolates between the color1 and color2 colors by hue, saturation, and lightness to create a color gradient when generating texture data. This initializer does not generate texel data; the MDLColorSwatchTexture class automatically generates data and caches it for reuse when you use one of the MDLTexture methods listed in Accessing Texture Data.

## See Also

### Creating a Color Swatch Texture

- [init(colorTemperatureGradientFrom:toColorTemperature:name:textureDimensions:)](modelio/mdlcolorswatchtexture/init(colortemperaturegradientfrom:tocolortemperature:name:texturedimensions:).md)
