# GraphicsDevice

> Provides the main entry point for the NVIDIA Module.

## Definition

* **Type:** Class
* **Namespace:** [UnityEngine.NVIDIA](/engine/6000.6/script-reference/unityengine/nvidia.md)
* **Assembly:** UnityEngine.NVIDIAModule

```csharp
public class GraphicsDevice
```

## Remarks

Use this to interact with specific NVIDIA graphics card features.

## Static Properties

| Property                                                                                | Description                                                                                                      |
| --------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| [device](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/device.md)   | Gets the device created by o:GraphicsDevice.CreateGraphicsDevice().                                              |
| [version](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/version.md) | Gets the version that corresponds to Unity's host plugin that manages the NVIDIA.NVUnityPlugin official library. |

## Methods

| Method                                                                                                        | Description                                                                                                                                                                                      |
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [CreateDebugView](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/createdebugview.md)       | Creates an object containing debug information of the device.                                                                                                                                    |
| [CreateFeature](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/createfeature.md)           | Creates a specific NVIDIA feature.                                                                                                                                                               |
| [DeleteDebugView](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/deletedebugview.md)       | Deletes a debug view created with [GraphicsDevice.CreateDebugView](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/createdebugview.md).                                        |
| [DestroyFeature](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/destroyfeature.md)         | Destroys a specific feature created with [GraphicsDevice.CreateFeature](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/createfeature.md).                                     |
| [ExecuteDLSS](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/executedlss.md)               | Records the execution of DLSS into a rendering command buffer.                                                                                                                                   |
| [GetOptimalSettings](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/getoptimalsettings.md) | Returns a structure containing the optimal settings for a specific target resolution and quality.                                                                                                |
| [IsFeatureAvailable](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/isfeatureavailable.md) | Checks if the current NVIDIA graphics card supports the feature you specify using the [GraphicsDeviceFeature](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevicefeature.md) enum. |
| [UpdateDebugView](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/updatedebugview.md)       | Updates a snapshot of the debug information for the view object passed.                                                                                                                          |

## Static Methods

| Method                                                                                                                                      | Description                                                                  |
| ------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
| [CreateGraphicsDevice](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/creategraphicsdevice.md)                           | Creates the main API object. Call this method only once in your application. |
| [GetAvailableDLSSPresetsForQuality](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/getavailabledlsspresetsforquality.md) | Gets a bit mask of available presets for the given DLSSQuality.              |
| [GetDLSSPresetExplanation](/engine/6000.6/script-reference/unityengine/nvidia/graphicsdevice/getdlsspresetexplanation.md)                   | Gets the explanation for the given preset.                                   |
