Unity-Technologies/UnityCsReference · error · NotSupportedException

PlayerSettings.storeLargeTile80 is deprecated. Use SetVisual

Error message

PlayerSettings.storeLargeTile80 is deprecated. Use SetVisualAssetsImage() instead.

What it means

PlayerSettings.WSA.storeLargeTile80 is a deprecated static property setter that always throws NotSupportedException. The legacy Windows 8.1 per-scale tile properties were replaced by SetVisualAssetsImage(string, WSAImageType, WSAImageScale). The property is marked [Obsolete(..., true)] and [EditorBrowsable(Never)].

Source

Thrown at Editor/Mono/PlayerSettingsWSA.cs:405

                    throw new NotSupportedException("PlayerSettings.storeSmallTile180 is deprecated. Use GetVisualAssetsImage() instead.");
                }
                set
                {
                    throw new NotSupportedException("PlayerSettings.storeSmallTile180 is deprecated. Use SetVisualAssetsImage() instead.");
                }
            }

            [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
            [Obsolete("Use GetVisualAssetsImage()/SetVisualAssetsImage()", true)]
            public static string storeLargeTile80
            {
                get
                {
                    throw new NotSupportedException("PlayerSettings.storeLargeTile80 is deprecated. Use GetVisualAssetsImage() instead.");
                }
                set
                {
                    throw new NotSupportedException("PlayerSettings.storeLargeTile80 is deprecated. Use SetVisualAssetsImage() instead.");
                }
            }

            [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
            [Obsolete("Use GetVisualAssetsImage()/SetVisualAssetsImage()", true)]
            public static string storeLargeTile
            {
                get
                {
                    throw new NotSupportedException("PlayerSettings.storeLargeTile is deprecated. Use GetVisualAssetsImage() instead.");
                }
                set
                {
                    throw new NotSupportedException("PlayerSettings.storeLargeTile is deprecated. Use SetVisualAssetsImage() instead.");
                }
            }

            [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]

View on GitHub (pinned to 225b0fbdb5)

Solutions

  1. Replace with PlayerSettings.WSA.SetVisualAssetsImage(path, WSAImageType.UWPSquare150x150Logo, WSAImageScale._100).
  2. Audit the entire project for remaining storeLargeTile80 references.
  3. Update or replace any plugin DLLs that reference the deprecated member.

Example fix

// before
PlayerSettings.WSA.storeLargeTile80 = "Assets/Icons/largeTile80.png";

// after
PlayerSettings.WSA.SetVisualAssetsImage("Assets/Icons/largeTile80.png", WSAImageType.UWPSquare150x150Logo, WSAImageScale._100);
Defensive patterns

Strategy: type-guard

Validate before calling

// Use the new setter API directly
PlayerSettings.WSA.SetVisualAssetsImage(path, WSAImageType.UWPSquare150x150Logo, WSAImageScale._100);

Type guard

static bool IsDeprecatedWsaProperty(string name) =>
    typeof(PlayerSettings.WSA)
        .GetProperty(name,
            System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Static)
        ?.GetCustomAttribute<ObsoleteAttribute>()?.IsError == true;

Prevention

When it happens

Trigger: Assigning a value to PlayerSettings.WSA.storeLargeTile80 (the setter) in editor scripts, build automation, or post-build steps. Usually reached via reflection or code compiled against a stale Unity API.

Common situations: Upgrading from an older Unity that supported Windows 8.1 store apps; build scripts that programmatically configure UWP package visual assets; third-party plugins that hard-code the old property name.

Related errors


AI-assisted analysis of Unity-Technologies/UnityCsReference@225b0fbdb5 (2026-08-13). Data as JSON: /api/errors/45df69f28cd200f5. Report an issue: GitHub.