Settings & Game Options - Unified Menu

Links: Manual | Forum


A game options menu template / creator (ui + logic).


With this asset you have only one API to interact with (or one ScriptableObject if you pref a code-free workflow). It does not matter which render pipeline you use. The tool makes sure everything is hooked up the right way so you can have your settings applied effortlessly.


✔️ URP, HDRP and Built-in supported

No extra purchases needed. It's an all-in-one asset.


✔️ Lots of predefined settings (list below)

Battle tested implementations.


✔️ Input-Binding (OLD and NEW Input System)

Save and edit your key bindings. Supports the OLD and the NEW input system.


✔️ Mouse, Keyboard, Controller, Gamepad, Touch

No matter what you players use. We've got you covered.


✔️ No coding skills required

Scriptable Object based workflow.


✔️ Prefab based UI (easy to tweak)

In fact you are getting a whole modular UI library.

You don't like it? Well, okay, no problem. It's built to be ripped out if need be.


✔️ PC and CONSOLE style prefabs

Easy to swap. Just right-click and choose another prefab. No need to configure it again, the tool takes care of it all.


✔️ Localization built-in

Predefined translations which are easy to extend with assets like I2 Localization, ..


✔️ PlayerPrefs, JSON, ...

Saves the user settings in PlayerPrefs or as JSON.

Code hooks enable you to integrate it into other save systems like Easy Save, ..


✔️ Visual Scripting

Requires manual setup, see manual. Takes about 30 seconds.


✔️ Scripting API

For the coders among you.


✔️ UI Toolkit

Supported since Unity 2021.2.


✔️ Auto Save

Disabled by default, check the toggle on the provider to enable.


✔️ Event Components

React to setting changes in your scene without a single line of code.


✔️ Full Source Code included


✔️ Supports Unity 2020, 2021, 2022, 2023, Unity 6, ...


⚠️ Settings like "Gamma", "Ambient Occlusion" or "Motion Blur" are post processing effects. If you use the Built-in renderer you will have to install the PostProcessing Stack (V2) from the package manager (it's a free package from Unity). Don't use Built-In PostPro on mobile. It's very hit and miss. Use the URP renderer instead. It comes with its own PostProcessing stack and that one works on mobile too.


⚠️ Controller support for the OLD input system is based on the standard xbox controller layout. I encourage you to use the NEW InputSystem which has a much better controller abstraction included. However, if you are fixed to the old system then I'd recommend using InControl for controller abstraction.


⚠️ Visual Scripting (formerly BOLT) requires a one-time manual setup. It takes about a minute. Please follow the instructions in the manual.


⚠️ UIToolkit support (starting with in Unity 2021.2) is rudimentary (all the logic works but there aren't many UI components, yet). I am also waiting for Unity to finish some stuff (runtime binding). More details are in the manual.


I publish this asset with full source code because as a developer I know how annoying it is to not have source code access. If you like it then please remind others to purchase the plugin. Don't just copy and paste it everywhere.

Thank you ❤️



List of Settings


There is an extensive list of predefined custom settings. You can also invent your own or simply hook up a primitive type with any method in your game. All of them support HDRP, URP and Built-in renderers.


  • Basic Types: Bool, Int, Float, String - Generic settings to easily create custom settings.

  • Colors - Save and load any color value.

  • ColorOptions - Let the user pick from a list of colors.

  • Options - If you want the player to choose only from a limited set. You give it a list of names (A, B, C) and it tells you with an index (0,1,2) which option the player selected.

  • Key Combination - Used for key-bindings for example. Supports old and new key codes and key combinations (one or two keys). Three key combinations like Ctrl + Alt + F4 are not supported but can be added via code.

  • Input Binding - InputBinding UI. The look and interaction is identical to the KeyCombination UI. The difference is that it performs an interactive rebind using the new InputSystem. However to do this it requires a bit of setup. Please read the „Input Binding“ section in the manual before using this.

  • Ambient Light - Controls the ambient light intensity.

  • Ambient Occlusion (SSAO) - On/Off for Screen Space Ambient Occlusion. Please check the manual, there are some caveats with this one.

  • Anti Aliasing - Selectable options are based on your renderer settings.


  • Audio Paused - On/Off for Audio: Pauses the Audio Listener (useful for global audio on/off).

  • Audio Volume - Controls the Audio Listener volume (useful for global audio volume).

  • Audio Source Volume - Controls the volume of one or more specific AudioSource Components.

  • Bloom - On/Off for the bloom post processing effect.

  • Depth Of Field - On/Off for the depth of field post processing effects.

  • Field Of View - FOV for cameras (main cam or explict ones)

  • Frame Rate - Options to control the target frame rate. Default options are: 30, 60 and 120.

  • Full Screen - On/Off of for full screen mode.

  • Gamma - Range for the gamma correction post processing effect (-1 to +1).

  • Motion Blur - On/Off for the motion blur post processing effect. Notice: URP does not have a per-object motion blur. More on that in the manual.

  • Monitor - Allows you to switch the display monitor of the main window. ⚠️ NOTICE: This requires Unity 2021.2 or higher since that's when Unity added the monitor switching API.

  • MSAA - In addition to the other aliasing methods.

  • Quality - Changes the global quality setting. Options are taken from the graphics quality settings automatically.

  • Refresh Rate - Options for monitor refresh rates. Options are taken from the refresh rates supported by the monitor.

  • Resolution - Options for the game resolution. Options are taken from the resolutions supported by the monitor.

  • Render Scale - URP only. Allows you to set the render scale on the current render asset.

  • Shadow - On/Off for shadows (and contact shadows if you use HDRP).

  • Shadow Distance - Options for max shadow distance. The options are based on your graphics quality settings.

  • Shadow Resolution - Options for max shadow map resolutions. The options are based on your graphics quality settings. Notice: the shadow resolution is spread out over the shadow distance. Thus the highest shadow resolution with the lowest shadow distance gives the best quality (that's a little counter intuitive, I know).

  • Textfield - Let the player enter a name or something else.

  • Texture Resolution - Options for texture resolutions. The default options are: full-res, 1/2 res, 1/4 res, 1/8 res.

  • Vignette - On/Off for the vignette post processing effect.

  • V-Sync - On/Off for vertical sync.

  • Window Mode - Use this if you need more control than just "full screen on/off". Otherwise use the "Full Screen" setting. You rarely need this.

Third Party Integrations / Connections

The settings system supports some third party assets. These assets are NOT included. You'll have to get them separately. - Please notice that I have no influence on these assets.






  • InControl - Please check out the "InControl Integration" guide in the manual on page ~104)

  • ReWired - Please check out the "Rewired Integration" guide in the manual on page ~100)

The setting you need is not in the list? 😱

Please send a request to office@kamgam.com. New settings are added constanly based on user suggestions.



☕ Use cases

You want a gamma slider?

->This is your one-click solution.


You quickly need a settings UI that supports mouse, controller and touch input?

-> Here you go.


You want some UI to allow players to edit the key-bindings in your game?

-> Unified Settings supports both the old and the new input system and allows players to save their settings.



✍️ Usage

Please read the intro sections of the manual first. Things will go a lot smoother if you know a little about the basic concepts this asset uses. There is a quick guide in the manual too which you can follow.


1) Create a Settings Provider (Create > SettingsGenerator > SettingsProvider).

2) Add the "SettingsInitializer" to your main scene (the one that is loaded first).

3) Add one of the UI Prefabs ending with ".. (Setting)" to your UI.

4) Choose a setting from the list.

5) Hit play and enjoy.


HINT: Check out the examples. They are ready to build (in case you just want to try them out on your device).



☎️ Support


Before you contact support please upgrade to the latest version of the asset and the latest version of your Unity LTS release.


If you have any questions write to office[at]kamgam.com. Please be patient, replies may take a few days. Please include your Asset Store Order Nr and Unity version in your request.

Thank you.



If you like this asset then maybe you'll like these too:


☘️ 2.5D Terrain

3D Mesh and 2D collider generated from curves.


✂️ Prefab Fixer & Replacer

Fix broken prefabs without losing any changes.


✏️ Smart UI Selection

Skip the hierarchy search. What you click is what you select.


⚒️ Power Pivot

Rotate around anything, not just the pivot.