# GPUSurfaceCapabilities.Builder

Artifact: [androidx.webgpu:webgpu](https://developer.android.com/jetpack/androidx/releases/webgpu) [View Source](https://cs.android.com/search?q=file:androidx/webgpu/GPUSurfaceCapabilities.kt+class:androidx.webgpu.GPUSurfaceCapabilities.Builder) Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

*** ** * ** ***


```
public final class GPUSurfaceCapabilities.Builder
```

<br />

*** ** * ** ***

Builder for `https://developer.android.com/reference/androidx/webgpu/GPUSurfaceCapabilities`.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/webgpu/GPUSurfaceCapabilities.Builder#Builder(kotlin.Int)(int usages)` |

| ### Public methods |
|---|---|
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/webgpu/GPUSurfaceCapabilities` | `https://developer.android.com/reference/androidx/webgpu/GPUSurfaceCapabilities.Builder#build()()` Builds the `https://developer.android.com/reference/androidx/webgpu/GPUSurfaceCapabilities`. |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/webgpu/GPUSurfaceCapabilities.Builder` | `https://developer.android.com/reference/androidx/webgpu/GPUSurfaceCapabilities.Builder#setAlphaModes(kotlin.IntArray)(@https://developer.android.com/reference/androidx/annotation/NonNull int[] alphaModes)` |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/webgpu/GPUSurfaceCapabilities.Builder` | `https://developer.android.com/reference/androidx/webgpu/GPUSurfaceCapabilities.Builder#setFormats(kotlin.IntArray)(@https://developer.android.com/reference/androidx/annotation/NonNull int[] formats)` |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/webgpu/GPUSurfaceCapabilities.Builder` | `https://developer.android.com/reference/androidx/webgpu/GPUSurfaceCapabilities.Builder#setPresentModes(kotlin.IntArray)(@https://developer.android.com/reference/androidx/annotation/NonNull int[] presentModes)` |

## Public constructors

### Builder

Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

```
public Builder(int usages)
```

## Public methods

### build

Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

```
public final @NonNull GPUSurfaceCapabilities build()
```

Builds the `https://developer.android.com/reference/androidx/webgpu/GPUSurfaceCapabilities`.

### setAlphaModes

Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

```
public final @NonNull GPUSurfaceCapabilities.Builder setAlphaModes(@NonNull int[] alphaModes)
```

### setFormats

Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

```
public final @NonNull GPUSurfaceCapabilities.Builder setFormats(@NonNull int[] formats)
```

### setPresentModes

Added in [1.0.0-alpha06](https://developer.android.com/jetpack/androidx/releases/webgpu#1.0.0-alpha06)

```
public final @NonNull GPUSurfaceCapabilities.Builder setPresentModes(@NonNull int[] presentModes)
```