Skip to content

Overcooked! All You Can Eat: a profile, and Unity profile keys that cut its shaders from 520k to 45k #369

Open

Description

@TeeJayBaker

Idea

A profile for Overcooked! All You Can Eat (0100F28011892000, update 1.0.11 = v720896, Unity 2019.4.11f1 IL2CPP). It has no profile upstream.

Plan

  • Three optional profile keys in shader_split.py for Unity games: unity_tier (keep the one hardware tier the player runs), unity_skip_keywords (leave out keyword variants the game data never enables) and unity_skip_passes (leave out the editor-only Meta pass). Unity shipped every tier and variant: 520,394 shaders without the keys, 45,221 with them.
  • The profile: memory layout, depth_mode zero, present_interval display (60 fps), the keys above, the shader tables, its note and a gallery screenshot.
  • Both go to seedds/nxnative as a pull request, and here as patches until they land.

Done when

  • The upstream pull request is open and the patches here say forwarded seedds/nxnative#<n>.
  • Tested on the Mac (M1 Pro, macOS 26.7.2): menus, two DLC world maps and a level on each, 30 and 60 fps, no shader missing from the map. iOS is untested.

Activity

  1. modified the milestones: v1.1.1, v1.1.2, v1.1.3 on Nov 1, 2026
  2. v0lumehi commented on Nov 2, 2026

    @v0lumehi
    Collaborator

    Thanks for the idea and the numbers. 520k down to 45k shaders is a big gain. The patches are in #372. I put this in v1.1.3. Engine changes go to seedds/nxnative first, as CONTRIBUTING.md and patches/README.md describe. Could you open the matching pull request there and put its number in the patch header (Upstream-Status: forwarded seedds/nxnative#N)? If you cannot, tell me and a maintainer sends it. The patch number is given out when the pull request merges, so you do not need to chase it.

  3. TeeJayBaker commented on Nov 2, 2026

    @TeeJayBaker
    ContributorAuthor

    Thanks! The upstream PR is already open: seedds/nxnative#836. All three patches (0054 to 0056) carry Upstream-Status: forwarded seedds/nxnative#836 in their headers.

  4. v0lumehi commented on Nov 2, 2026

    @v0lumehi
    Collaborator

    Thanks, the upstream PR seedds/nxnative#836 is the right place. The three patches are in #372 until upstream takes them. The patch numbers are given out when #372 merges, so 0054 to 0056 will change then. The issue stays in v1.1.3.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    ideaA proposal or feature idea, not a bug

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions