Forum Discussion

homsar47's avatar
homsar47
Explorer
4 months ago

Conflicting Information in the Horizon OS SBC (Shader Binary Cache) Documentation?

In the documentation regarding building a shader binary cache per-platform (link) the documentation states:

Using this feature, once one user starts the app and manually builds the SBC, all other users with the same device and software (Horizon OS, graphics driver, and app) will be able to avoid the shader generation process by downloading a copy of a pre-computed SBC.

However, later on the same page, it states there is an automation in place to launch the apps and perform scripted prewarming logic if requested.

The system automatically identifies and processes Oculus OS builds and app versions that require shader cache assets. It generates and uploads these assets to the store backend and automatically installs them during an app install or update.

Does this feature support both of those setups? If I am not scripting any custom warmup logic, will shader binary caches still be shared between users with identical setups?

IE, if I simply play the release candidate on the target OS version/hardware, will my SBC be automatically uploaded, or are SBCs only distributed when a scripted warmup sequence is present? Few details are provided regarding SBCs from other users being uploaded, so I'm curious if this is an inaccuracy or not.

Thanks, excited to see features like this in Horizon OS. Very important for first time user experience.

1 Reply

  • TC_JKant's avatar
    TC_JKant
    Honored Guest

    Did you ever find out more about the SBC feature? We are having issues with verifying the whether or not the feature is properly working with our game, and if not, then for what reason.

    Reviewing this talk, it sounds like maybe a certain number of players / play time duration needs to be reached before the cache is uploaded to the system, but I am just speculating on that. The talk was also released prior to the actual feature, so I'm not sure whether it properly reflects the functionality that was actually released. 

    https://developers.facebook.com/videos/2025/performance-unleashed-maximizing-meta-quest-in-2025/

    Reading the official documentation that you linked, my impression is different than in the talk above. The docs emphasize creating a custom pre-warm process, the result of which the SBC system can automatically copy to the cloud so that other users would not have to go through the same process. This sounds very useful for the end user but it does not really address the same "ease of use" from a developer perspective that was emphasized in the talk I linked.

    Regardless of how the process should work from an integration perspective (we can handle either automatic "union" of user warmups, or a manual prewarm), is there a way to verify that it is actually working?

→ Find helpful resources to begin your development journey in Getting Started

→ Get the latest information about HorizonOS development in News & Announcements.

→ Access Start program mentor videos and share knowledge, tutorials, and videos in Community Resources.

→ Get support or provide help in Questions & Discussions.

→ Show off your work in What I’m Building to get feedback and find playtesters.

→ Looking for documentation?  Developer Docs

→ Looking for account support?  Support Center

→ Looking for the previous forum?  Forum Archive

→ Looking to join the Start program? Apply here.

 

Recent Discussions