Building a Multiplayer ARKit Game with Placenote SDK

Written by neilxm | Published 2018/04/24
Tech Story Tags: augmented-reality | multiplayer | game-development | arkit | arkit-game

TLDRvia the TL;DR App

This new Unity package will teach you how to build a multiplayer AR game in exactly 20 minutes

Basic placenote multiplayer sample with a Moon and some Cross Wings

We just released a new Unity package that will teach you how to build a multiplayer AR game in exactly 20 minutes. If you’re building (or want to build) a multiplayer AR game or app, this article is for you.

Multiplayer AR has been considered by many in the industry to be the key ingredient to making AR apps more social, and ultimately more “sticky” with users.

That sounds amazing, but how do you go about building a Multiplayer AR game? What are the design challenges with building an app like this? While there are several SDKs in the market building the tech needed to enable multiplayer AR, that’s far from all you need, as a developer, to build a multiplayer AR app. There’s still a ton of work you need to do to build the networking, UX, server back-end, and game mechanics before you can launch a reasonably good-looking multiplayer experience. So we decided to make this easier.

The Problem

At Placenote, we built the first multiplayer AR game ever released on the App Store — Place Invaders — a quirky Space Invaders clone. It was no Pokemon Go, but it helped us learn a lot about the problems with building multiplayer AR experiences. We learnt that it was hard to build multiplayer AR, not just because of the tech needed to align many phones to a single world origin, but also because building a networked online game requires a ton of set up to help users communicate with each other.

With the latest ARKit 2.0 release, Apple has included ARWorldMap capabilities similar to Placenote, but as a developer, using this means you need to manage the storage and sharing of maps yourself, as well as build all the player communication into your game from scratch (or use iCloud).

If you plan to build a multiplayer AR game that can scale up to a lot of users, you’ll likely want to use a mature networking SDK like Photon Engine.

Our Solution

At Placenote, we want to make it insanely easy to build amazing AR apps. Placenote SDK provides a fully managed cloud solution for mapping and localization, but we wanted to go much further. We wanted to simplify building all the pieces of a multiplayer game, so you can focus on your game rather than wasting time building infrastructure.

Introducing Placenote-Multiplayer. — an extension to the existing PlacenoteSDK that offers everything you need to get your first multiplayer app up and running.

Placenote Multiplayer Manager Screenshot

It’s a Unity Package that includes prefabs to quickly setup Player position tracking, Player Networking (Using Photon) and a simple Game UI elements that you can easily extend to build any Multiplayer AR experience you can dream of. We’ve also created a guided video tutorial to help you build a simple multiplayer experience in 20 minutes.

Getting Started

It’s time to get our hands dirty with code. To get started, check out the step-by-step tutorial we created to help you set up a simple, yet scalable multiplayer AR session in 20 minutes.

Build a Multiplayer AR Game in 20 minutes

If you want to jump right in check out our Github repo, PlacenoteSDK-Multiplayer.

Placenote/PlacenoteSDK-Multiplayer_PlacenoteSDK-Multiplayer - A Unity project template to get you started creating a multiplayer augmented reality game…_github.com

If you’re new to Placenote SDK:

If you’re new to Placenote SDK, you’ll want to first learn a bit about Placenote and you can do that with our starter Sample app here:

Getting started with Placenote SDK

Diving Deeper

Once you’ve gone though these videos and tried the sample code, it’s time to broaden your understanding of multiplayer AR development and start experimenting with new designs and game mechanics to build the ultimate mobile AR experience. Here’s a few bits of information that might serve as a useful starting point.

Anatomy of a Multiplayer AR Game

At a basic level, all multiplayer AR games have the following components:

  1. Allowing players to find each other and connect on the same server
  2. Setting up a world mapping session to track each player’s position
  3. Sharing the world map across multiple players through the cloud
  4. Communicating the relative position of one player to other players
  5. Synchronizing game assets and actions between multiple players

Placenote-Multiplayer includes Prefabs to accomplish each of these tasks in a simple manner but you can now extend and customize these modules to suit your game.

Technologies Being Used

In the sample’s above, we’re using the following tools. You can dive into each of these to learn more about them.

Unity3D: The best IDE for AR game development

Placenote SDK: Cloud Mapping and localization service to simplify AR persistence and multi-user synchronization.

ARKit: iOS libraries for AR experiences.

Photon Engine: One of the most popular cloud APIs for multiplayer game networking. Placenote-Multiplayer will handle all the Photon integration, so you do not have to worry about it.

Example of a Real Game Built with Placenote-Multiplayer

We created a simple game called “Place Invaders” using the multiplayer SDK as an example to show you how to extend the Placenote-Multiplayer. This game is an alien defense survival game where you use your phone to defend against approaching aliens.

You can try it on the App Store here:

‎Place Invaders on the App Store_‎Read reviews, compare customer ratings, see screenshots, and learn more about Place Invaders. Download Place Invaders…_itunes.apple.com

Or checkout the source code on our repo here:

Placenote/PlaceInvaders_PlaceInvaders - Multiplayer AR game sample_github.com

Next Steps

There are of course, many more challenges with building multiplayer AR games like robust position tracking and seamless gameplay but for now, we wanted to give developers an easy way to get started learning about multiplayer AR development and dreaming up new, delightful experiences that can usher in an new era of Social AR.

So go ahead, get started and build the next generation of highly engaging, social, mobile AR experiences! We, at Placenote are here to help you at every step of the way, so if you have a question or just want to brainstorm ideas for games, join our 250 member strong slack community.

See you on Slack!


Published by HackerNoon on 2018/04/24