Unity Player Settings: A Guide

January 29, 2024

Unity is a cross platform game engine that allows developers to port their game to any platform. Every game publishing platform has some specific configuration that needs to be set. Unity allows developers to set these options under Player settings.

Player settings are essential as they define how your game will behave on different platforms and under various conditions. There are a few settings that are the same regardless of the build target like logo and game name but most are platform-specific.

This article aims to provide an in-depth look at Unity’s Player Settings, offering insights into their importance and how to effectively utilize them.

This is a series on data storage and user preferences in Unity. We recommend reading the series in order.

  1. Persistent Data Path in Unity
  2. Scriptable Objects in Unity
  3. Player Settings in Unity

What are Unity Player Settings?

Unity Player Settings is a comprehensive set of options that allows developers to tailor their game’s performance and behavior according to the target platform, be it mobile devices, PCs, consoles, or web browsers. These settings include screen resolutions, input configurations, graphics API, publishing options and much more.

Understanding and correctly configuring these settings is required for optimizing your game’s performance and for ensuring compatibility across different devices.

📄 Resources:

How to access Player Settings in Unity

To access the Player Settings in Unity, follow these steps:

  1. Open your Unity project.
  2. Click Edit in the menu bar.
  3. Select Project Settings from the dropdown menu.
  4. In the Project Settings window, choose the Player category from the left pane.

You can also access the player settings from the Build Settings window. To open the build settings window, click File > Build Settings.

Some assets on the Unity Store can help you to manage your Player Settings.

Either way, you will have a window full of options that you need to configure.

📄 Resources:

Detailed Overview of Player Settings in Unity

Unity’s Player Settings are divided into several sections, each catering to different aspects of your game’s configuration:

Icon

The “Icon” section within Unity’s Player Settings is specifically dedicated to setting the icons for your game application across different platforms. You can set platform specific icons, multiple icon sizes and a default icon to use.

Resolution and Presentation

Resolution and Presentation section provide the following options

  • Default resolution at which your game starts.
  • Whether to allow the game to continue running when it’s not the active window.
  • Different aspect ratios that will be supported by your game.
  • Orientation in case of mobile devices.
  • Use Player Log option: Useful for debugging, this option enables logging of game activity.

Splash Screen

This section allows you to customize the default splash screen or remove it if you have a paid version of Unity. Unity is planning to add the remove option to the free version for Unity editors launched in 2024 and after.

Other Settings

  • Rendering Path: Defines how Unity renders graphics, a crucial setting for performance optimization.
  • API Compatibility Level: Determines which .NET APIs are available in your game, affecting compatibility with different devices.
  • Scripting Backend and API Compatibility Level: These settings control the .NET environment of your game.

These settings change a lot depending on your game’s target platform.

📄 Resources:

Publishing Settings

  • Keystore Manager: For Android games, this is where you configure signing certificates for app publication and manage custom manifest files.

📄 Resources:

Best Practices for Unity’s Player Settings

  • Texture Compression: Use appropriate texture compression settings to reduce build size without significantly impacting visual quality.
  • Stripping Level: Utilize code stripping to remove unused code and reduce the overall size of your game.
  • Asset Bundles: Consider using asset bundles for large assets to decrease the initial download size.
  • Know Your Platform: Different platforms may perform better with specific graphics APIs. For instance, Metal might be more efficient for iOS, while Vulkan or OpenGL could be preferred for Android.
  • Fixed Orientation: If your game is meant to be played in a fixed orientation, make sure this is correctly set in the Player Settings to avoid unexpected behavior.
  • Platform-Specific Versioning: Be aware of platform-specific versioning requirements, like Android’s versionCode, which needs to be incremented for each update.

Common Player Settings Mistakes to Avoid

  • Overlooking Compression: Failing to use or incorrectly using texture compression can lead to unnecessarily large builds.
  • Ignoring Unused Code: Not utilizing code stripping can bloat your game with unnecessary code, increasing both size and load times.
  • Inappropriate API Selection: Using a graphics API that is not optimized for your target platform can lead to performance issues. Provide fallback graphics APIs for devices that may not support your primary choice.
  • Incorrect Orientation Setting: An incorrect orientation setting can lead to poor user experience, especially on mobile devices where users expect flexibility.
  • Inconsistent Incrementation: Failing to properly increment your build version can cause issues with deployment and updates, particularly in app stores.

📄 Resources:

Recap and Conclusion

Unity’s Player Settings are a crucial aspect of game publishing, dictating how your game behaves across different platforms. By understanding and correctly configuring these settings, you can significantly enhance your game’s performance and user experience.

Remember to optimize for your target platform, use graphics APIs effectively, and always test your game on various devices. With these insights, you’re now better equipped to make the most out of Unity’s Player Settings, paving the way for successful game development.

Want to build better games?

© 2024