240 lines
10 KiB
Markdown
240 lines
10 KiB
Markdown
# Project settings commands
|
||
|
||
Read and change a representative slice of Unity's project-wide settings (Audio, Graphics, Input, Physics, Player, Quality, Tags & Layers, Time). `get_*` commands read a group's current values into a `ProjectSettingsResponse`; `set_*` commands mutate them through the shared `confirm`/`dry_run` convention, so `confirm=true` is required to apply and `dry_run=true` previews the change without applying it. Every command in this group is `MainThreadRequired = true`. On a `set_*`, omitted fields are left unchanged, and the group is re-read after the write so the response reflects the resulting state. Settings writes are not undoable via Ctrl+Z.
|
||
|
||
### `get_audio_settings`
|
||
Read project Audio settings (volume, rolloff scale, doppler factor).
|
||
|
||
No parameters.
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`.
|
||
|
||
### `set_audio_settings`
|
||
Change project Audio settings. Requires confirm=true; use dry_run to preview.
|
||
|
||
| Parameter | Required | Default | Description |
|
||
|-----------|----------|---------|-------------|
|
||
| `settings` | no | `–` | Fields to change; omitted fields are left unchanged (fields below). |
|
||
| `confirm` | no | `false` | Apply the change. Without it the call is refused. |
|
||
| `dry_run` | no | `false` | Preview the change without applying it. |
|
||
|
||
`settings` fields:
|
||
|
||
| Field | Required | Default | Description |
|
||
|-------|----------|---------|-------------|
|
||
| `volume` | no | `–` | Global audio volume (0..1). |
|
||
| `rolloffScale` | no | `–` | Global rolloff scale. |
|
||
| `dopplerFactor` | no | `–` | Global doppler factor. |
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`. `confirm=true` required to apply; supports `dry_run`.
|
||
|
||
### `get_graphics_settings`
|
||
Read GraphicsSettings (default render pipeline).
|
||
|
||
No parameters.
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`.
|
||
|
||
### `set_graphics_settings`
|
||
Set the default render pipeline asset. Requires confirm=true; use dry_run to preview.
|
||
|
||
| Parameter | Required | Default | Description |
|
||
|-----------|----------|---------|-------------|
|
||
| `settings` | no | `–` | Fields to change; omitted fields are left unchanged (fields below). |
|
||
| `confirm` | no | `false` | Apply the change. Without it the call is refused. |
|
||
| `dry_run` | no | `false` | Preview the change without applying it. |
|
||
|
||
`settings` fields:
|
||
|
||
| Field | Required | Default | Description |
|
||
|-------|----------|---------|-------------|
|
||
| `renderPipelineAsset` | no | `–` | Reference (path / guid / globalId) to a RenderPipelineAsset to set as the default. Pass an empty reference (`{}`) to select the built-in pipeline; omit to leave unchanged. |
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`. `confirm=true` required to apply; supports `dry_run`.
|
||
|
||
### `get_input_settings`
|
||
Read the legacy Input Manager axes (names and count).
|
||
|
||
No parameters.
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`.
|
||
|
||
### `set_input_settings`
|
||
Tune a legacy Input Manager axis (sensitivity/gravity/dead) by name. Requires confirm=true; use dry_run to preview.
|
||
|
||
| Parameter | Required | Default | Description |
|
||
|-----------|----------|---------|-------------|
|
||
| `settings` | no | `–` | Axis change. 'axis' selects the axis by name; omitted numeric fields are left unchanged (fields below). |
|
||
| `confirm` | no | `false` | Apply the change. Without it the call is refused. |
|
||
| `dry_run` | no | `false` | Preview the change without applying it. |
|
||
|
||
`settings` fields:
|
||
|
||
| Field | Required | Default | Description |
|
||
|-------|----------|---------|-------------|
|
||
| `axis` | yes | – | Name of the axis to modify (e.g. 'Horizontal'). |
|
||
| `sensitivity` | no | `–` | New sensitivity. |
|
||
| `gravity` | no | `–` | New gravity. |
|
||
| `dead` | no | `–` | New dead-zone size. |
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`. `confirm=true` required to apply; supports `dry_run`.
|
||
|
||
### `get_physics_settings`
|
||
Read Physics settings (gravity, solver iterations, bounce threshold).
|
||
|
||
No parameters.
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`.
|
||
|
||
### `set_physics_settings`
|
||
Change Physics settings. Requires confirm=true; use dry_run to preview.
|
||
|
||
| Parameter | Required | Default | Description |
|
||
|-----------|----------|---------|-------------|
|
||
| `settings` | no | `–` | Fields to change; omitted fields are left unchanged (fields below). |
|
||
| `confirm` | no | `false` | Apply the change. Without it the call is refused. |
|
||
| `dry_run` | no | `false` | Preview the change without applying it. |
|
||
|
||
`settings` fields:
|
||
|
||
| Field | Required | Default | Description |
|
||
|-------|----------|---------|-------------|
|
||
| `gravityX` | no | `–` | Gravity X component. |
|
||
| `gravityY` | no | `–` | Gravity Y component (e.g. -9.81). |
|
||
| `gravityZ` | no | `–` | Gravity Z component. |
|
||
| `defaultSolverIterations` | no | `–` | Default solver iteration count. |
|
||
| `bounceThreshold` | no | `–` | Bounce threshold velocity. |
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`. `confirm=true` required to apply; supports `dry_run`.
|
||
|
||
### `get_player_settings`
|
||
Read PlayerSettings (company/product/version, scripting backend, API level).
|
||
|
||
No parameters.
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`.
|
||
|
||
### `set_player_settings`
|
||
Change PlayerSettings. Requires confirm=true; use dry_run to preview. Scripting backend / API level changes trigger a domain reload.
|
||
|
||
| Parameter | Required | Default | Description |
|
||
|-----------|----------|---------|-------------|
|
||
| `settings` | no | `–` | Fields to change; omitted fields are left unchanged (fields below). |
|
||
| `confirm` | no | `false` | Apply the change. Without it the call is refused. |
|
||
| `dry_run` | no | `false` | Preview the change without applying it. |
|
||
|
||
`settings` fields:
|
||
|
||
| Field | Required | Default | Description |
|
||
|-------|----------|---------|-------------|
|
||
| `companyName` | no | `–` | Company name. |
|
||
| `productName` | no | `–` | Product name. |
|
||
| `bundleVersion` | no | `–` | Bundle/application version string. |
|
||
| `scriptingBackend` | no | `–` | Scripting backend (e.g. Mono2x, IL2CPP). Triggers a domain reload. |
|
||
| `apiCompatibilityLevel` | no | `–` | API compatibility level (e.g. NET_Standard_2_0, NET_Unity_4_8). Triggers a domain reload. |
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`. `confirm=true` required to apply; supports `dry_run`. Changing `scriptingBackend` or `apiCompatibilityLevel` triggers a domain reload (`requiresDomainReload`); scripting-backend / API-level changes are read and written against the active build target.
|
||
|
||
### `get_quality_settings`
|
||
Read QualitySettings (current level, level names, vSync, anti-aliasing).
|
||
|
||
No parameters.
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`.
|
||
|
||
### `set_quality_settings`
|
||
Change QualitySettings. Requires confirm=true; use dry_run to preview.
|
||
|
||
| Parameter | Required | Default | Description |
|
||
|-----------|----------|---------|-------------|
|
||
| `settings` | no | `–` | Fields to change; omitted fields are left unchanged (fields below). |
|
||
| `confirm` | no | `false` | Apply the change. Without it the call is refused. |
|
||
| `dry_run` | no | `false` | Preview the change without applying it. |
|
||
|
||
`settings` fields:
|
||
|
||
| Field | Required | Default | Description |
|
||
|-------|----------|---------|-------------|
|
||
| `level` | no | `–` | Quality level index (see levelNames from get_quality_settings). |
|
||
| `vSyncCount` | no | `–` | VSync count (0 = off, 1, 2). |
|
||
| `antiAliasing` | no | `–` | MSAA sample count (0, 2, 4, 8). |
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`. `confirm=true` required to apply; supports `dry_run`.
|
||
|
||
### `get_tags_layers`
|
||
Read the project's tags and (named) layers.
|
||
|
||
No parameters.
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`.
|
||
|
||
### `set_tags_layers`
|
||
Add/remove tags and assign user layer names (index 8-31). Requires confirm=true; use dry_run to preview.
|
||
|
||
| Parameter | Required | Default | Description |
|
||
|-----------|----------|---------|-------------|
|
||
| `settings` | no | `–` | Tag/layer changes to make (fields below). |
|
||
| `confirm` | no | `false` | Apply the change. Without it the call is refused. |
|
||
| `dry_run` | no | `false` | Preview the change without applying it. |
|
||
|
||
`settings` fields:
|
||
|
||
| Field | Required | Default | Description |
|
||
|-------|----------|---------|-------------|
|
||
| `addTags` | no | `–` | Tag names to add. |
|
||
| `removeTags` | no | `–` | Tag names to remove. |
|
||
| `setLayers` | no | `–` | User layer assignments (index 8-31); array of layer-assignment objects (fields below). |
|
||
|
||
`setLayers[]` (layer-assignment) fields:
|
||
|
||
| Field | Required | Default | Description |
|
||
|-------|----------|---------|-------------|
|
||
| `index` | yes | – | Layer index (8-31 for user layers). |
|
||
| `name` | yes | – | Layer name (empty string clears the slot). |
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`. `confirm=true` required to apply; supports `dry_run`. User layers are indices 8-31 (0-7 are reserved).
|
||
|
||
### `get_time_settings`
|
||
Read Time settings (fixedDeltaTime, maximumDeltaTime, timeScale).
|
||
|
||
No parameters.
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`.
|
||
|
||
### `set_time_settings`
|
||
Change Time settings. Requires confirm=true; use dry_run to preview.
|
||
|
||
| Parameter | Required | Default | Description |
|
||
|-----------|----------|---------|-------------|
|
||
| `settings` | no | `–` | Fields to change; omitted fields are left unchanged (fields below). |
|
||
| `confirm` | no | `false` | Apply the change. Without it the call is refused. |
|
||
| `dry_run` | no | `false` | Preview the change without applying it. |
|
||
|
||
`settings` fields:
|
||
|
||
| Field | Required | Default | Description |
|
||
|-------|----------|---------|-------------|
|
||
| `fixedDeltaTime` | no | `–` | Fixed timestep in seconds (e.g. 0.02). |
|
||
| `maximumDeltaTime` | no | `–` | Maximum allowed timestep in seconds. |
|
||
| `timeScale` | no | `–` | Time scale (1 = real-time). |
|
||
|
||
**Returns:** `ProjectSettingsResponse`
|
||
**Notes:** `MainThreadRequired = true`. `confirm=true` required to apply; supports `dry_run`.
|
||
|
||
See [Creating commands](../creating-commands.md) and [Connectivity](../connectivity.md).
|