Wednesday, 11 January, 2017 UTC


Summary

Back in 2016, I submitted a concept in response to the British Council call for entries to their UK-India 2017 Digital Open Call. Titled “A piece of Art as big as India”, the idea was to create an augmented reality sculpture that the people of India could not only view via mobile devices but sculpt themselves. As I said in the original proposal:
Imagine a virtual layer of silk as big as the subcontinent, seeming to float in the sky above…
I was keen to make the installation viewable on as many devices as possible and after receiving seed funding from the British Council to develop the idea, I researched several platforms that would allow that to happen. It quickly became clear that the most popular mobile phone OS in India was Android, so I started looking for libraries that would allow me to create augmented 3D content in real time. A-Frame came to my attention via the three.js community and after discovering a fantastic AR prototype by Mozilla employee Dietrich Ayala, I knew that it was the perfect front-end library for this project:
AR with @aframevr + getUserMedia + Firefox on Android. #quack pic.twitter.com/ZXnkterwgu
— dietrich ayala (@dietrich) August 3, 2016
I started blogging about every step of the project, as well as sharing all my experiments on GitHub and GitHub pages. My friend Ross Cairns helped me get my development environment set up, utilising A-Frame as well as the following technologies:
  • node.js
  • Express
  • nodemon
  • Pug
  • Less
  • Gulp
  • Browsersync
Via the Awesome A-Frame collection on GitHub, I discovered several different 3D landscape components. Kevin Ngo, one of the maintainers for A-Frame, had created a Mountain component fitted my requirements, and after chatting with him on the A-Frame Slack, he even led me through submitting my first-ever pull request on GitHub, to allow the component to be viewed from below as well as above.
Dietrich and I collaborated remotely to integrate his AR demo code with Kevin’s updated mountain component, eventually making a version for both Android and iOS. (Apple hasn’t implemented the getUserMedia() in mobile Safari, so we had to use a static panorama instead.)
The British Council conducted audience testing in India during the last weeks of November 2016 – unfortunately, I didn’t get through to the next stage of the project but I’ll be using A-Frame for all of my future online VR/AR projects and am very grateful to the entire A-Frame community for all their help and support.