How to build an AR prototype in Unity

Contact us

Just before this summer, our company Vragments and the Technologiestiftung Berlin, a non-profit foundation from Berlin, teamed up to explore the possibilities of augmenting real city models with geospatial visualizations. It just so happens, that the Berlin Senate Department for City Development is housing an exhibition of several Berlin city models in 1:500 and 1:1000 scale. You can take a virtual tour on their home page, if you like. Our efforts brought to life an AR prototype, built using Unity3D and their native ARKit and ARCore plugins that you can download here for 👉 iOS and Android 👈. Currently, it is in German, but we may consider adding an English version (if you are interested, please get in touch with us).

Code is also on GitHub, since this is an open source project. Feel free to check it out, play around with it and do your own cool stuff with geographic data.

A 1:500 scale model of inner city Berlin in the foreground, and a 1:1000 scale larger area of Berlin in the background. A 1:500 scale model of inner city Berlin in the foreground, and a 1:1000 scale larger area of Berlin in the background.

Types of visualization

Three questions we had to ask ourselves before getting started:

  • what open data was available at that time,
  • what has been done before in “traditional” data visualization,
  • and what would actually fit the bounding box of the real-reality (RR) vertical model.

We decided to investigate three main types of visualization on top of the model — areas, lines and points of interest. So we were looking for some interesting data-sets to use.

Getting data — area, lines and points of interest

The model’s bounding box is mostly inner city Berlin. What kind of data is available?

Area data

The most fine-grained set for areas would be data on a building block level, as demonstrated in this visualization project of broadband internet access (German). Another option is to look for data-sets based on an administrative area pattern of so called living-oriented spaces in Berlin’s open-data portal. The amount of data available was rather underwhelming and we ended up using a measure of city density taking the relation of floors per building to the ground area into account.

Line data

What about lines? A recent project “Radmesser” published by Der Tagesspiegel and funded by MIZ Medieninnovationszentrum Babelsberg evaluated the availability and condition of bike lanes in Berlin. That should make for a good visualization.

A second set of line data was coming from a data project on urban bike mobility. The data-set contains starting and ending timestamps of a bike trip along with a set of coordinates going from one station to another over the course of 24 hours. It was a total of 1505 bike trips to be animated across the physical board, so already an interesting performance question regarding update cycles, frame rates, etc. on a mobile, while keeping track of the environment and such.

Points of interest

A third visualization type was to focus on points of interest. The Berlin Wall had such an impact on the city and its development for decades that it was our main choice to be added as an augmentation onto the model. We picked three iconic sites as points of interest and visualized them through a set of pictures and a description.

Read the full post on Medium

What did we learn? We believe this is an innovative project, since it allowed us to test how augmenting data visualizations onto physical 3D models can help future city development. It is a valuable tool for planners and citizens alike, making sure that decisions can be made and communicated transparently. Three examples where we see this in the future: How road planning affects communities (see our VR project A100, about a Berlin highway extension project) Allowing citizens to make informed decisions about which community/area they want to live in based on area specific open data Displaying real-time sensor data to discover critical issues regarding environment and health (air/noise pollution, water quality, etc.)

If you have any questions, comments or contributions contact us. Thank you!