UPDATE 30/04/2018: Before reading this article, you should know that VRTK is actually alive again! Read this article of mine where I announce version 4 of VRTK and how it has been possible.
Exactly 2 weeks ago, I and other VR innovators have been shocked by the announcement of the VRTK shut down that will officially happen in the next few days. I thought that the VR community would start rebelling, that VR magazines would have written dozens of articles about this and that in some days, a happy ending would have come, exactly has appended with AltspaceVR, that first announced its shut down and then was acquired by Microsoft. Actually, almost no one seemed to care and so the project seems doomed to fail. This is sadly quite normal: even when I shut down my startup, Immotionar, I realized that, apart from some supporters, the whole VR ecosystem didn’t give a heck and let my project die. I think that it is a great loss for all the VR world and so I want to point the spotlight on this news.
First of all, what is VRTK? VRTK is an open-source framework to speed up your development of VR projects inside Unity (here you can find its Git repo). It is developed by Harvey Ball, mostly known as The Stone Fox (another person that loves fancy nicknames as me!), a developer that started it as a tool to help himself developing VR projects for its brand new HTC Vive. As reported by UploadVR, this is how VRTK has born:
I wanted to build something for it as I was new to game dev. I’d been using Unity for about a month just as a hobby, I tried to use the SteamVR Unity plugin and found it confusing, realized a lot of people found it confusing and started VRTK as a way to help people get into developing for VR.
Having tried SteamVR plugin myself, I agree that it is a lot confusing and also very poorly documented. VRTK got a lot of attention and various games were built using it.
What are the advantages of VRTK?
- It lets you develop for multiple headsets once and then deploy everywhere. This means that VRTK abstracts the underlying framework (Oculus, SteamVR, etc…), so that you can make the code hardware agnostic and runtime agnostic and develop your VR application so that it can be easily ported on every device;
- It implements out of the box a lot of functionalities required for developing your VR games, like various types of locomotion, objects grabbing, interaction with objects, etc… so that you don’t have to implement them by yourself;
- It has a quite active Slack community, with The Stone Fox answering your questions;
- It is open-source (MIT License), so you can modify the code as you wish;
- It is completely free.
So, it is just awesome. I and Gianni thought about developing something similar at Immotionar, but then we gave up, also because we saw that there was this great free alternative on the market.
Of course, it has also disadvantages:
- It is poorly documented, as most open-source projects;
- It is maintained and developed by almost only one person, so the project is highly dependent on one person only and this makes it poorly reliable;
That’s why, during a discussion on Disq.us, I got this answer by a VR developer regarding the use of VRTK and its comparison with another tool, NewtonVR:
It’s less that I dislike VRTK and more that I just really like NewtonVR. NewtonVR is way easier to add to a project and implement into an existing scene than VRTK, and has some really useful toggles for enabling and disabling things whenever you want. VRTK is definitely more time consuming to get working, and is just an absolute pain to work with if you want to add or modify anything. VRTK is fine if you want the bare minimum of VR in Unity without having to be an experienced Unity developer, but NewtonVR is just far more workable in the long term, and offers an incredibly strong physics package to work with, as the name suggests.
Also, neither one has the best documentation, but the VRTK documentation is atrocious and the video tutorials are always outdated because the VRTK developers are constantly flipping everything on its head. That’s the main reason I gave up on VRTK and started using NewtonVR.
The tool is free because Harvey wants it to be available to the maximum number possible of developers:
I wanted to make it available to as many people as possible. My belief is the more people building for VR is only better for evolving the platform. VRTK is all about getting as many people as possible working together on solutions to common problems for the common good. Also making it accessible for people new to dev but with good ideas so to remove high barriers of entry. Charging for it would just limit that for people. Plus it enables developers to build for a crazy fragmented market, using VRTK means it just works on Steam, Oculus, PSVR, etc.
This is a great mission but creates the problem of funding. How to get the money for that? Mr. Ball has a daytime job as web developer and works on the project in its free time (free time… does it exist?), so he doesn’t need money to live but he needs money to sustain the project. He tried with Kickstarter, but with little luck: it was predictable since Kickstarter is good to sell hardware stuff or games, but it’s not that great for software frameworks. Anyway, he reached 44.000$ circa of possible pledges, and this demonstrates how much the project has gained the interest of the community.
So he headed on Patreon, where thanks to donations, it earns almost $1900 every month: not bad for a side project developed in the free time.
Everything seemed going well, as you can see, but actually, it all came to a catastrophic end.
The detonator has been Patreon’s decision to change its fee system, that added a constant fee of $0.35 to every donation. This change has “scared” most of the backers that were willing to donate only $1 or $2 to their loved creators and so lots of authors have seen their donations diminishing a lot. The same has happened to The Stone Fox, that in the end decided to shut down its project:
What is strange is that the decision has come exactly when Patreon had announced to cancel out this update, considering the rebellion of the whole community to them:
Furthermore, if you look VRTK’s Patreon page, you can easily see that donations up to $5 (the ones more affected by the fee changes) constitute the least part of the money that Harvey was getting, so this decision seems to have other reasons. The same Stone Fox confirms that:
With the last sentence, he means that VRTK donations, while they seem a lot, don’t even cover the expenses. He explains that better on Patreon page:
It’s not the fee changes on patreon that are the problem. The patreon account creates a misunderstanding where people feel vrtk is well funded, which is far from true. The money that’s currently in the patreon account (I’ve not withdrawn any from day one) wouldn’t even cover my expenses for conferences and meetups attended in 2017. Costs me lost time at actual work to go to things like that. And that’s just the tip of the iceberg
Because yes, he was invited to prestigious events, like the Unite Europe 2017
But I think that the real reason is that he hoped this project got more money because he wanted it to become a sustainable business so that he could evolve VRTK as he wished, making it become something like a standard de facto in the industry. 2000$ each month to keep a small company alive are just breadcrumbs. To develop VRTK v4 he asked for something like 200000$ on Kickstarter: this money was necessary to make VRTK evolve, by adding functionalities and refactor completely the code. This would surely need the help of other (paid) people. He wanted VRTK to become a company, not just a fancy opensource project.
A lot of people asked how they could help, but it seems there’s no way. Someone has proposed to switch it to a paid licensing mode, but The Stone Fox refused to do that, first of all, because it would be contrary to the reason why he started it and also because very few people would pay enough for it:
Unfortunately a paid version would first add a pay wall to dev entry which was not the mission of VRTK, plus there’s no guarantee that enough people would buy it and make it worth while.
Someone else has proposed him to let the community be of any help, but he responded quite angrily
Why would the community continue it? They haven’t been active with my involvement and actively trying to galvanise community support.
Furthermore, I don’t even know how the community can help, since the code is very complicated, poorly documented and almost all in the mind of only one person.
About the possibility of external help from the VR industry….
So, the project is coming to an end. It will be rolled out the next version, the 3.3.0, that includes the support for Windows Mixed Reality headsets, and then there will be only bug fixes.
In the end, I think that it is an enormous pity. VRTK was (and still is) a very interesting project but had big business problems since the beginning. I think it has not started taking in count money, and as I said in my startup’s post-mortem post, “a startup is all about money“. So he started it as a free project hoping to get traction through donations, but this traction never arrived. Furthermore, as a little VR blogger, I can assure you that if you’re not a big brand and you’ve not huge investments, it’s hard to survive in the VR niche. It is still little and so little money is available: while Upload VR and Road To VR can survive due to various fundings, I and other fellow bloggers struggle to get some money to go on (that’s why many have already closed). And the same has happened with VRTK, that has not been able to survive in this little and competitive world.
In my opinion, more than help with the code and some phantom “community support” (what does it exactly mean?!), what Harvey needs is some business consultancy to understand if there is a viable way to make its business sustainable. Most opensource companies live because of customizations of the software and consultancies and I think that if there is a way to make VRTK sustainable is in that sense. Or he should sell the code to another company (Unity?). Because he needs a lot of money to go on, not just some donations (even if donations doubled, nothing would change).
So, if you are a business consultant or an interested company, just get in touch with him. And if you are a journalist or just a VR innovator, spread the news. Because VRTK deserves to be saved.
UPDATE: On Twitter, the article has been read by Harvey Ball and Chris M. Böddecker (a contributor of VRTK) and… ehm… to be honest they didn’t like it that much. They say that while I may have written it with the best intentions, it doesn’t highlight the passion that the creator has put in this project and that it is full of false assumptions and wrong information:
Honestly I’m very sorry about that: while I wait for an official response from the VRTK members to be appended to this article, I want to say that I wrote it with the only intention of being supportive of this interesting project, that is dying without any kind of interest from the important players of this ecosystem. I wanted to give it some visibility, in the hope that someone could help them. I also want to say that I tried to document as much as possible before writing this post, but material was very few, so I had to make some assumptions myself. Furthermore, other people said me that they liked it a lot. Anyway, if someone has felt offended because of my post, I sincerely apologize.
Harvey Ball has also added that it is not been only money the issue, it’s tired of working overnight on a project in which the industry seems not having that much interest. And that’s a huge pity.
I just want to end this update specifying that Chris has said that what VRTK would need now are more contributors for this opensource project, so, if you want to join this movement, feel free to contact them (on Slack, Twitter or whatever channel).
UPDATE 2: Since January 2018, Harvey, the main developer, has officially closed VRTK’s Patreon account.
Furthermore he has stated that he has no faith in other people continuing his project, notwithstanding the fact that it is opensource.
(Header image by VRTK)