Today we’re really excited to announce support for WebVR into the PlayCanvas Editor.
This week Google announced that WebVR 1.1 (the latest current version of the spec) should be released in Chrome for Android in January 2017. But for a feature as complex as virtual reality, browser support is only one piece of the puzzle. At PlayCanvas, we know how important great tools are to making high quality experiences so today we’re launching our WebVR engine integration to make sure that you can create applications right now.
Optimized Engine Support
The PlayCanvas graphics engine is an advanced WebGL graphics engine. We’ve worked hard to make sure our renderer is optimized specifically for stereo rendering. Unlike most engines we don’t simply render the scene twice for each eye. Instead, our renderer knows that a lot of the main render loop is the same for each eye. So, for example, expensive operations like culling, sorting draw calls and setting uniforms and render states only have to be done once before we draw the scene for each eye. This can lead to a significant performance increase, particularly on mobile.
Polyfill for unsupported platforms
It’s still early days for WebVR which means it’s not yet supported on all platforms. When you enable WebVR in your PlayCanvas project, we make sure your browser can support it using the WebVR polyfill library from Google. PlayCanvas is smart enough to load the library only if you need it.
Big news! PlayCanvas is excited to introduce easy texture compression, enabling you to build bigger and better WebGL apps.
Today, the vast majority of WebGL developers load textures from JPG and PNG images. Unfortunately, while these formats compress well for transmission (especially JPG), they occupy a great deal of video memory when passed to WebGL. For example, let’s consider this image of the Earth:
PlayCanvas is proud to announce that browser-gaming giant Miniclip has published their first PlayCanvas-powered game: Virtual Voodoo.
Virtual Voodoo is designed to get you in the mood for a spooky Halloween. Make the poor Voodoo doll’s life a misery with a dastardly selection of spells, curses and implements of pain! You can even customize the doll with different clothing and accessories.
Jamie Cason, Executive Producer at Miniclip said:
We’re really excited by PlayCanvas technology and the promise that it holds for the future of Open Web Games. It is currently the best toolchain and engine for WebGL that we’ve seen and Virtual Voodoo represents the first of, what we hope to be, a series of successful PlayCanvas-powered Miniclip titles.
Using PlayCanvas to create new games is a no-brainer for Miniclip. Browser plugins are gradually being phased out of the browser ecosystem and HTML5/WebGL are the technologies browser game developers are moving to. PlayCanvas is the only professional IDE for building lightweight HTML5/WebGL games that have incredibly short load times. Virtual Voodoo is playable after loading only 4MB and loads in seconds. This means more players end up playing the game and Miniclip achieves better retention.
Look out for more PlayCanvas-games from Miniclip in the future. But for now, why not embrace your dark side and PLAY VIRTUAL VOOODOO NOW!
Today we’re launching the first version of the PlayCanvas REST API.
The REST API is available to all Organization account holders and allows developers to automate processes to help them with their development. For example, you can use the API to create a daily build of your application and download it via a build server. In the future we’ll be expanding the API with additional features like access to assets and more.
We’ve just launched “Scripts 2.0”, a complete re-design and re-implementation of the scripting system for PlayCanvas applications. Our goals were to fix an array of small irritations that had built up over using the PlayCanvas scripting for the last few years and take the opportunity to clean up the interface and simplify the creation and usage of scripts.
Here’s a list of the improvements you can enjoy with the new script system:
rapid iteration by hot-swapping code at run-time
real-time collaborative code editing
script concatenation and minification for publishing
better error handling and fault tolerance
full folder support for script assets
multiple script definitions in a single file
simpler interface and boilerplate
If you choose to, you can now allow your scripts to update all running instances of your application. We dynamically reload scripts after they change. By implementing a single swap() function, you can transfer state into your new script instance and carry on as if nothing had happen. Except you’ve got all your new code!
Real-time collaborative code editing
Now that scripts are first-class assets, we now support real-time collaboration in the Code Editor. This means you’re no longer in danger overwriting other people’s code. In fact, you can see it appear as they type.
To help support this, we’ve also improved the error handling and fault tolerance of scripts while they’re running. This means bad scripts won’t bring your game screeching to a halt, preventing everyone from working.
How do you find these new scripts?
Scripts 2.0 is live right now and any new projects you create will have the new script system enabled. However, if you’re not quite ready to move to the new system or you need some of the features that are currently only available with the old system, you can still create projects using the “Legacy Script System”. Look for the option in the new project dialog.
Did you hear? VR is BIG! But what is bigger than VR? The web, that’s what. What happens when you mix the web and VR?
WebVR is an emerging standard that lets you create 3D virtual experiences on the web and control them using your mobile phone or VR headset. But creating virtual reality is a complex process involving knowledge of WebGL rendering, new input APIs and (at the moment) a constantly changing spec.
That’s why we’ve introduced the VR Starter Kit in PlayCanvas.