Oculus Go Development

On 6/23/20 Oculus announced plans to sunset Oculus Go. Information about dates and alternatives can be found in the Oculus Go introduction.

Oculus Quest Development

All Oculus Quest developers MUST PASS the concept review prior to gaining publishing access to the Quest Store and additional resources. Submit a concept document for review as early in your Quest application development cycle as possible. For additional information and context, please see Submitting Your App to the Oculus Quest Store.

Language Packs (Rift)

Note: You are viewing the Unreal version of this topic. To view this topic for Unity development, see Language Packs (Rift) (Unity). To view this topic for native development, see Language Packs (Rift) (Native).

Language Packs enable you to provide additional languages with your app without increasing the initial download size.

These files are uploaded to the Oculus store when you upload your app package.


When you provide language packs as downloadable assets, you not only decrease initial download size, but you can enable language selection to occur in the Oculus app instead of in your app. The Oculus app will provide a language picker on the Details page of your app, populated with languages based on the language packs you provide. The following image shows an example of how this looks.

For Oculus to correctly recognize your language pack you should name it with a language code per BCP47 format, with a suffix of “lang”. For example en-us.lang and de.lang would be valid language pack names.

Upload a Binary with Language Packs to the Oculus Store

To upload a binary with assets or language packs, you must use the Oculus Platform Command Line Utility. with the upload-rift-build command. To upload asset files, use one of the following parameters.


When you upload new apps that have accompanying asset files, make sure the asset files have the same name as previously uploaded versions of the same file.

  • For language packs, use the --language_packs_dir parameter to specify the directory that contains the language packs. For example, for a Rift app that has language packs, you would use a command like the following:

    ovr-platform-util upload-rift-build -a 12345 -s 1234 -d path/to/mygame.zip --language_packs_dir /path/to/myGame/language-packs -c ALPHA

View Language Packs on the Dashboard

Once you successfully upload your items, you can view and manage them on the developer dashboard. Navigate to the Developer Dashboard. On the left menu, select your org, and select your app and click on its Expansion Files. Then find the Expansion Files column for the build you just uploaded and then select View Expansion Files. The different kinds of assets will display.

  • Look for Language Packs.

The following image shows an example.

Asset File Dashboard

Check for Language Packs in Your App Code

Use the following steps to check for language packs in your app code.

  1. Use the ovr_AssetFile_GetList function to get a list of all assets.
  2. Check for an asset type with the GetAssetType function of AssetDetails. A language pack will be of type language_pack.
  3. Use the GetLanguage function to get the language of the asset.