How to Publish Your VR Game on Itch.io

Itch.io is a website that allows indie developers to publish and sell their games. They also help people host their own game jams so developers can practice their game dev skills. Whether you’re looking for people to test out your prototype, submitting a game jam game or trying to sell a completed project, you should probably know how to publish on Itch.io.

If you want to check out Itch.io, make sure to follow this link here.

Installing The Right Modules

Before we can target certain platforms, we need to make sure we have the right modules installed. The two we should focus on for VR should be PC and Android. PC will cover headsets like the Valve Index and the Vive, while the Android build will allow us to develop for the Meta Quest 2.

In Unity Hub

  • Select Installs
    • Find the version of Unity that your game uses
      • Click the Cog in the Top Right and Select Add Modules
      •  Install the following
        • Android Build Support
        • OpenJDK
        • Android SDK & NDK Tools
        •  Windows Build Support
We now should have all the modules we’ll need to build for Android and PC.

Double Checking Controller Setup

Before we start pumping out builds, I want to make sure That we’ve added the interaction profiles that we wish to publish for with our controllers. Skipping this step might leave some users disappointed when their Vive controllers aren’t working.

  • Go to Edit -> Project Settings -> XR Plug-in Management
    • Select the PC tab and make sure OpenXR = true
    • Select the Android tab and make sure Oculus = true (You can also use OpenXR here as well)
    • Expand XR Plug-in Management and select OpenXR
      • Select the PC tab
        • Under Interaction Profiles
          • Select the plus sign in the bottom right and add all the controller types you wish to target
      • Select the Android tab
        • Under Interaction Profile
          • Select the plus sign in the bottom right and add all the controller types you wish to target
 

Customizing Player Settings

It’s always a good idea to make sure that our game can be identified by icons, product name, company and version. We can do all this in the Player settings.

  • Go to Edit-> Project Settings -> Player
    • Company Name = Your company or your name
    • Product Name = Name of your game
    • Version = What current version of the game you’re releasing with this build
    • Default Icon = This is the Icon that will display for your game
      • We can further customize different resolutions if we expand out the Icon tab below
    •  Under Splash Image
      • This is where the “Made With Unity” screen is setup if you’re using the free version. You can also put your company logo here using the Virtual Reality Splash Image
    •  Under the Android tab
      • Make sure Minimum API Level = Android 10.0
      • Target API Level = Automatic
That’s it for our custom settings. Feel free to express yourself and your branding here! It’s your game, so let others know you made it!

Building our PC Version

Let’s start by making our PC version. 

  • Go to File -> Build Settings
    • Make sure It’s set to Windows, Mac, Linux 
    •  Click “Add Open Scenes”
      • Note: If you have multiple Scenes, you can click and drag them into “Scenes In Build”. Just know that the first Scene in the list will be the one that loads first.
    •  Select Build
      • Create a folder and call it “Builds”
        • Open the “Builds” folder and create another called “PC Build”
        • Select the “PC Build” folder and let Unity builder the game
    • Navigate to your PC Build folder and open it
      • Select all the files and right click, select Compress to Zip file
      • Rename the newly created zip file “YourGameNamePCBuild”
 

This zip file will serve as our PC build to setup for download on Itch!

Building our Android/Quest Version

To build for Android/Quest, we need to head back into Unity and it’s Build Settings.

  • Go to File -> Build Settings
    • Select Android
      • Select Switch Platform
      • Set Texture Compression to ASTC
      • Select Build
        • Open your “Builds” folder
        • Create a new folder called “Android Builds”
        • Select the new folder and build your Android version!

When you’re done, you’ll be left with an APK file in your “Android Builds” folder. That’s it! Nothing left to do, but deploy to Itch!

Deploying Our Builds to Itch.io

We have both our builds! Now let’s get them posted on Itch.io

  • Head to Itch.io with this link and create an account
  • Click the profile dropdown and select Upload new project

You should be greeted with a page that looks like this.

I hope you’ll forgive me for not diving deep into fully customizing out pages in this tutorial. I wanted to simply focus primarily and building getting our games on the platform. I will mention that it’s important to fille out the title, descriptions and add great screenshots and a solid cover image to draw in players. 

Now to upload our files, it’s as easy as this!

  • Navigate to the Builds folder from your Unity Project
  • Click the Upload files button
    • Add your PC build zip file
    • Add your Android .apk file
That’s really it! As for designing your game page, make sure to check out itch’s official guide to how their pages work found here.

 

Also try checking out some game with great pages for their games for inspiration. I stumbled into a reddit post that listed some of their favorites to help get you started here!

Conclusion

With that, your VR game should be publishable to Itch! Hope you found this useful, and I’ll se you in the next one.