# RenderingThreadingMode

> Options for the application's actual rendering threading mode.

## Definition

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

```csharp
public enum RenderingThreadingMode
```

## Remarks

The combination of Player Settings [PlayerSettings.MTRendering](/engine/6000.7/script-reference/unityeditor/playersettings/mtrendering.md), [PlayerSettings.graphicsJobs](/engine/6000.7/script-reference/unityeditor/playersettings/graphicsjobs.md) and [PlayerSettings.graphicsJobMode](/engine/6000.7/script-reference/unityeditor/playersettings/graphicsjobmode.md), as well as the target platform capabilities decides the rendering threading mode during the start of the Unity Editor or Standalone. After startup, you can use the property [SystemInfo.renderingThreadingMode](/engine/6000.7/script-reference/unityengine/systeminfo/renderingthreadingmode.md) to query the rendering threading mode.

To specify whether graphics jobs threading mode is allowed in the Editor, use the **Allow Graphics Jobs in Editor** checkbox in the Jobs panel of the [Preferences Window](/engine/6000.7/manual/unity-editor/editor-settings-reference/preferences/jobs.md). Enabling this option lets Unity use the graphics jobs threading mode in the Editor when graphics jobs is enabled in Player Settings.

## Fields

| Value                                                                                                                                                          | Description                                                                                                                                                                                                                |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Direct](/engine/6000.7/script-reference/unityengine/rendering/renderingthreadingmode/direct.md)                                                               | Use the Direct enum to directly render your application from the main thread.                                                                                                                                              |
| [LegacyJobified](/engine/6000.7/script-reference/unityengine/rendering/renderingthreadingmode/legacyjobified.md)                                               | Generates intermediate graphics commands via several worker threads. A single render thread then converts them into low-level platform API graphics commands.                                                              |
| [MultiThreaded](/engine/6000.7/script-reference/unityengine/rendering/renderingthreadingmode/multithreaded.md)                                                 | Generates intermediate graphics commands via the main thread. The render thread converts them into low-level platform API graphics commands.                                                                               |
| [NativeGraphicsJobs](/engine/6000.7/script-reference/unityengine/rendering/renderingthreadingmode/nativegraphicsjobs.md)                                       | Main thread generates intermediate graphics commands. Render thread converts them into low-level platform API graphics commands. Render thread can also dispatch graphics jobs to several worker threads.                  |
| [NativeGraphicsJobsSplitThreading](/engine/6000.7/script-reference/unityengine/rendering/renderingthreadingmode/nativegraphicsjobssplitthreading.md)           | Generates intermediate graphics commands via several worker threads and render thread dispatches several worker threads to convert them into low-level platform API graphics commands.                                     |
| [NativeGraphicsJobsWithoutRenderThread](/engine/6000.7/script-reference/unityengine/rendering/renderingthreadingmode/nativegraphicsjobswithoutrenderthread.md) | Generates intermediate graphics commands via several worker threads and converts them into low-level platform API graphics commands.                                                                                       |
| [SingleThreaded](/engine/6000.7/script-reference/unityengine/rendering/renderingthreadingmode/singlethreaded.md)                                               | Use SingleThreaded for internal debugging. It uses only a single thread to simulate [RenderingThreadingMode.MultiThreaded](/engine/6000.7/script-reference/unityengine/rendering/renderingthreadingmode/multithreaded.md). |
