What makes PlayCanvas a distinct engine?
It provides all of the things you would expect from a modern, cutting edge engine: a visual editor, integrated physics engine, advanced graphics and so on. Beyond that, PlayCanvas is completely unique. The tools are multi-user in the style of Google Docs.
It’s the first engine to run on mobile as well as the desktop. And because PlayCanvas is a website, we’ve been able to build a rich social experience around the tools.
You very recently switched the engine over to be open-source. Why?
It really comes down to what’s better for the developer. It’s completely clear that PlayCanvas users are better off for having full, unrestricted access to our codebase. They’re able to figure out precisely how the engine works, debug when things go wrong and drive it in the most efficient way possible.
They’re also able to directly contribute to the development of the engine, whether that’s correcting a spelling mistake in a code comment, or submitting a major feature back for integration. It’s a major win for all parties.
In the traditional middleware space, open sourcing technology is highly unusual. But in the world of web development, companies are pretty relaxed about it. There’s definitely a cultural difference there, and something that took us a while to adjust to, but I’m 100 per cent confident it’s the right move for us.
What do you think the long-term impact of going open-source could be, in terms of the its evolution and the games it creates?
In the long-term, we’ll see the engine become more stable, perform better and offer more features than if we had remained closed source. This is all very good news but what excites me is finding smarter, more efficient ways of making games. It’s the tools that matter. I strongly believe that the web and the cloud will see the rise of interconnected applications that can co-operate in ways that would be impossible on the desktop.
So down the road, we’ll see the engine driving an ecosystem of tools that will complement our cloud platform. For example, imagine an online, collaborative 3D sculpting tool that can pipe models directly to a user’s project on PlayCanvas. Or a tool that can read models from PlayCanvas projects, optimise them somehow and write them back. The PlayCanvas engine can power all of these kinds of projects.
And why a WebGL/HTML5-focused engine?
A lot of start-ups form out of frustration and PlayCanvas is no exception. In the engine space, there’s way too much emphasis on rendering prettier pixels. Engine technology simply hasn’t adapted to massive changes in how we work.
Today, I regularly collaborate with others in cloud applications. I spend just as much time on a mobile device as I do on a laptop. And I spend too many hours on social networks. It seems obvious to me that any engine that’s built to address these shifts will be built on the web, for the web. HTML5 and WebGL are the only serious choice of technologies to make that happen.
But there’s another major reason why WebGL and HTML5 appealed so much. A key goal for us is to open up game development to the widest audience possible. Mozilla came up with some fascinating stats last year: there are 200,000 iOS developers out there and 600,000 Android developers.
The engine’s hosting and ‘simple publishing’ abilities seem core to what you’ve built with PlayCanvas. Why and how is that important with the engine?
Games are made to be played. But it’s amazing how difficult developers make it for people to play their games sometimes. Weighty downloads, lengthy installs and frequent updates are examples most of us are familiar with. One of the key strengths of the web is that games can reach the end user in record time.
A ‘one click’ publish from your PlayCanvas project followed by a tweet can result in an avalanche of players accessing your game. App stores are great for monetisation, but nothing beats the web for virality.
Of course, we do recognise it’s critical for devs to be able to publish to app stores as well. This is why we have partnered with a company called Ludei whose CocoonJS technology can trivially wrap HTML5-based games as native apps for publishing to Google Play or the iOS App Store. It’s a very quick and easy process.
Exactly what kind of studio types or models was the engine conceived for? Perhaps you’d consider it suitable for a broader spectrum than just small teams?
We’ve built PlayCanvas to address the needs of indie developers. I’m talking about small, potentially distributed teams who are looking to make money from their titles. That said, it’s also a great fit for game jammers, students, enthusiasts and so on.
The sweet spot for PlayCanvas is casual, social and mobile games. Since triple-A game development projects are relatively few in number, it’s just not something we’ve been focusing on.
Let’s talk in more detail about the core abilities. What features would you say define the engine and will offer users the most opportunity in terms of the games they make?
We have an awesome feature set in our runtime engine and visual editor. But we’ve set out to change how people make games so the core features that really set us apart are mainly workflow related. Realtime collaboration is absolutely key and a complete revelation for games developers who have been forced to effectively work in isolation year-upon-year. Check out engine forum threads on the subject of collaboration and team-working and you’ll sense the frustration.
Cloud-storage is another major feature which grants an amazing amount of freedom. Sit down and develop on any machine you choose. There are well-understood reasons why the world stopped using Outlook Express and started using Gmail.
Another cornerstone to the engine is the community. It’s just not sufficient to claim a forum and a Q&A site constitutes a community today. We follow, we star, we like, we share. We want to be able to engage with like-minded individuals, to teach, discover and learn. PlayCanvas lets you do all this since everybody works online and stores their projects on playcanvas.com.
How does the existence of – and recent changes to – PlayCanvas reflect trends in the industry? In other words, how is it a response to the way you see the games making business going?
The main trend of the last 15 years or so is that technology for games development has become cheaper and easier to access. PlayCanvas is the next logical step down that path. The runtime is open source and distributed under a liberal MIT license.
The tools sit on a URL and developers have nothing to download or install. You can access the toolset from your smartphone or tablet as well as the desktop.
The tools are free to use and even the premium subscription accounts are incredibly cheap. We’ve got to the point where I’m struggling to think of what else we could do to make games development any more accessible than it is with PlayCanvas.
More generally, we’re seeing a thriving indie development community scoring some amazing commercial successes. We’re seeing more and more outsourcing and distributed teams. There are more platforms to target than ever. PlayCanvas is a direct response to all of this.
I think it’s also important to look at some of the trends beyond the games industry. Productivity applications of all types are now migrating into the cloud and subscription-based SaaS platforms are now commonplace. Making video games is a team-based, multi-discipline activity so if any industry can benefit from these ideas, it’s ours.