Skip to main content

Immersive Payment: First Update

It has been more than 6 months now that I have had the Immersive Payments, Spark Grant. Since then I have worked on realizing the scope of the project and finally, I am here to give an update.

The project aimed to solve the following facets of distributed payment in the space of webvr.

  • Can we have micro-payment enabled for small micro assets?
  • Can we have a way for content and asset creators to define a way to have these transactions as part of a self-hosted (or managed) marketplace
The initial concept was simple. Starting with 3d assets and models which a creator normally creates for making a virtual reality or even augmented reality scenes. Instead of having to buy them, can a creator benefit from the audience having more control over having added third party assets.

Initial Prototype:

The initial prototype for the project depends on Spoke and creating scenes for mozilla hubs. We wanted to see if we can have extended portions of these scene where some characters can be Monitezied using Web monitized while others are still under free domain.
For the initial experiments we wanted to see if a wholoe web page runnig a simple aframe webVR scene can be monited or not.
As it turns out it is relatively simple to enable web monetization in a simple webvr page and host it. And it's also fairly easy to add conditional's to the page too. For example to 
  <script defer src=""></script>
  <style id="wm-stylesheet">
    .wm-if-monetized { display: none; }
    .wm-if-not-monetized { display: none; }

This enables web monitization on those elements.

Or we can have a whole scene hidden. As you can see in this demo:

As you can see the browser first tries to verify if there is already a subscription attached to the coil account and enables the WebVR scene based on that. (caveat: you will need coil extension installed and logged-in in your browser if you want to test the URL)

Our next step was to see how can we have this implemented in individual elements of the scene. If you want to know more about adding web monetization on specific elements on your website. You can read the excellent guide here.

As a next step we start by using spoke for creating the vr scenes for integrating into Mozilla Hubs. The goal here is to have monetization enabled for separate assets inside the scene. 

Progress till now:

  • We can now enable selective web monetization for specific webvr assets
  • Separate 3d assets can be monetized


  • Have a centralized place where we can allow asset creators to highlight alternate story paths associated with exclusive assets
  • Have a way of enabling alternate story paths for webvr relates stories (this is enabled by creating alternate paths for the story to end/expand. However the present challenge is to see how can the implementation be done so that it doesn't cripple the rest of the scene)

I was fortunate to get an extension of the deadline. With that in mind, we have plans to actually contribute to the underlying protocol and have a proposal for conditional interactions. Based on our recently accepted work at ICBC which can be accessed here. Under the name "On Conditional Cryptocurrency with Privacy"

This concludes the very short initial update of the project. Some personal health issue along with the present Covid surge in my home country India, where I am right now made periodic updates to the project pretty difficult. A difficulty which I plan to address in the next few weeks.

Two follow-up blogpost will follow this post detailing some of our design choices, codes, and how you, if you want right now, can test some of the features. I would love to have your feedback and directions on the same.


Popular posts from this blog

FirefoxOS, A keyboard and prediction: Story of my first contribution

Returning to my cubical holding a hot cup of coffee and with a head loaded with frustration and panic over a system codebase that I managed to break with no sufficient time to fix it before the next morning.  This was at IBM, New York where I was interning and working on the TJ Watson project. I returned back to my desk, turned on my dual monitors, started reading some blogs and engaging on Mozilla IRC (a new found and pretty short lived hobby). Just a few days before that, FirefoxOS was launched in India in the form of an Intex phone with a $35 price tag. It was making waves all around, because of its hefty price and poor performance . The OS struggle was showing up in the super low cost hardware. I was personally furious about some of the shortcomings, primarily the keyboard which at that time didn’t support prediction in any language other than English and also did not learn new words. Coincidentally, I came upon Dietrich Ayala in the FirefoxOS IRC channel, who at

April Fool and Google Part 2: A Round Up of ALL of Google’s April Fools Jokes

Ok....this post I think will contain all of the pranks I could find  for today. After my last post here Last Time I reported Only a handful of the pranks.. Understandable, as it was only the morning. After that I stumbled upon more of them Which I am gonna round up here. Now staring with the list. The very first one is obviously our favourite Google Maps Quest The above is their official video. In a post in Google Plus they say about it as follows  Today  + Google Maps  announced Google Maps 8-bit for NES. With #8bitmaps , you can do everything you'd normally do in Maps—search for famous landmarks and sites around the world, get directions and even use Street View. Just in time for April Fool's Day, Google has introduced Google Maps Quest, a retro 8-bit version of its mapping tool that is... totally awesome. In a characteristically whimsical video, available above, Google emplo

Curious case of Cisco AnyConnect and WSL2

One thing Covid has taught me is the importance of VPN. Also one other thing COVID has taught me while I work from home  is that your Windows Machine can be brilliant  as long as you have WSL2 configured in it. So imagine my dismay when I realized I cannot access my University resources while being inside the University provided VPN client. Both of the institutions I have affiliation with, requires me to use VPN software which messes up WSL2 configuration (which of course I realized at 1:30 AM). Don't get me wrong, I have faced this multiple times last two years (when I was stuck in India), and mostly I have been lazy and bypassed the actual problem by side-stepping with my not-so-noble  alternatives, which mostly include one of the following: Connect to a physical machine exposed to the internet and do an ssh tunnel from there (not so reliable since this is my actual box sitting at lab desk, also not secure enough) Create a poor man's socks proxy in that same box to have my ow