Build a game for a loved one this month.

Our most popular PLAYHACK ever finishes today. Last month’s gem challenge sparked your creativity and led to over 30 forks of the project.

Featured Winner

yet another gem

This month our favourite PLAYHACK game is Yet Another Gems by lmao. A great 3D twist on a classic format. We were most impressed by the polish of the game. From the full menu and UI, to the the inclusion of online leaderboards using Google Play Services, this is a complete game. An impressive achievement for only one month’s development.


Here’s a selection of some of the games made this month. Special mention to runninglvlan who only started making his game Gem Labyrinth 12 days ago, but already has an addictive maze running game (my record is 130 points in 47 seconds)

Go watch and star the game projects for Gem Labyrinth and Yet Another Gems.

Make your loved one a game


With the end of one PLAYHACK must come the start of a new one. February 14th is St Valentine’s Day, so this month’s theme is to give you the chance to create the ultimate Valentine’s Day gift. Make your loved one their own special game.

We’re giving you 20 hearts of all shapes and sizes, and not only that, there is a loveable furry surprise in the pack too.

Valentine’s Day is only 2 weeks away, so don’t wait around. If you miss the 14th though, don’t worry, our deadline is the end of the month. And we’ll still love you whenever you finish.

How does it work?

  1. Fork this month’s project into your account
  2. Use 3D models from the project to build a new game.
  3. Post to your Devlog about your game throughout the month
  4. At the end of the month we’ll look at all the forks
  5. We’ll pick our favorite and feature it on the explore page

As there are so many models this month, feel free to pick and choose a few that you need.


The process of judging is as broad as the rules. You won’t be marked on the strength of code, graphics of theme, the winning game will be the game that we enjoy the most, simple.

What will you build?

This month we want to start up a discussion about what you can build.

We’ve got some ideas about what games suit the the theme and what would work best as a unique and personal gift for a loved one. But what do you think? Join the discussion in the forum.

Enough from us though.




We love you!

3D Asset Store Propsplanet upgrades from Unity to PlayCanvas


Propsplanet is an online digital marketplace which sells 3D models to independent game developers. Previously powered by the Unity Web Player browser plugin, Propsplanet has this week relaunched using the PlayCanvas engine.

“Upgrading our online 3D preview from Unity to PlayCanvas has made a huge difference to the customer experience on our website. It lets us broaden our audience from desktop only to include every shopper including tablet and mobile users. Our early tests show that using PlayCanvas decreases page loading times by over 10x which has led to more item views and the average time on site has increased by over 500%.”

Propsplanet founder, Wale Adeyeye

“WebGL technology is a huge deal for online retailers. For companies like Propsplanet, having previews of their digital assets is vital. Previous technologies were limited by plugins which led to low engagement and were simply missing the enormous mobile market. We’re showing how PlayCanvas isn’t just able to power the next-generation of games but also help digital retailers and other websites use 3D on the web to raise engagement and increase sales.”

PlayCanvas CEO, Will Eastcott

Propsplanet used our cloud-hosted tools platform to build the interactive 3D application which let’s users preview hundreds of 3D models streamed dynamically from the server. Because PlayCanvas applications are standard web pages the preview application works on every platform.

You can see what an improvement we made to the Propsplanet user experience in this side-by-side comparison video

You can try the PlayCanvas-powered application on Propsplanet’s store website now.

PlayCanvas Maintenance 1/10/2014

We’re going to be performing server maintenance over the next 48 hours to prepare for the next stages of our growth.

Whilst we hope you won’t be affected. There will be intermittent downtime over the next few days. You may also notice small errors like missing thumbnails. This is nothing to worry about! Check our twitter account to stay up-to-date.

We hope you understand and this downtime doesn’t inconvenience you too much. We’ll be back stronger and faster!

If you need something to do while PlayCanvas is down you could watch the tutorials on our Youtube Channel


Or take a read of the user manual on our developer site.



Team PlayCanvas

iOS 8 launched with WebGL

Amazing news for PlayCanvas Users, iOS 8 is out.

So we’ve finally seen the launch of the iOS 8. For all you PlayCanvas users out there this is fantastic news as it means PlayCanvas games work straight off the web in mobile Safari on hundreds of millions of iPhones and iPads.

To celebrate this we’ve launched a cool little demo to discover the new (and not quite released) iPhone 6. Take a look, and remember now it works on desktops, on Android and on iPhones and iPads!

iPhone 6


Share this with your iPhone using friends:

WebGL on iPhone in less than a minute

If you’ve been following the tech news over the last few months you’ll have noticed that Apple is about to launch the latest version of their mobile operating system iOS 8. For us game developers this is awesome news because iOS 8 supports WebGL in mobile Safari (the news we broke on this blog a few months ago).

It’s not just browser support for PlayCanvas games we’re interested in though. We also want to make sure you can get your PlayCanvas into the App Store. So, in advance of the iOS 8 release, we’re really pleased to be launching a new feature today for our Pro users.

PlayCanvas iOS Export

It’s now dead simple to get your PlayCanvas game running as a native iOS application. Take a look at our little video introduction.

It’s just one click to get a XCode project which is easy to build into a iPhone application.

Web vs Native

PlayCanvas is designed to use all the best features of the web, online collaboration, accessible from every device and shareable links. But that doesn’t mean we don’t see the advantages of native applications, especially on mobile. Installed games are run offline and can be easier to monetize.

You can now get the best of both worlds by releasing your games on the web and on iOS. Use the web to build viral, shareable games and release the same game on iOS, where the audience is ready to monetize.

Give it a try

If you’re a Pro account holder, you’ll see the iOS download right now in your exports tab. Get yourself a copy of the XCode 6 GM from the Apple Developer site and try it out. If you’re not a Pro account holder, what are you waiting for? Get yourself upgraded right now! 😉 is open source


As part of our continuing drive to make PlayCanvas more open and a better service we’ve moved the source to our developer resources site: onto github.

This means that the community can be more involved in building tutorials, making sure everything is up-to-date and improving the experience for other PlayCanvas users.

How do I get involved?

Fork it!

First take a fork of our github project:

Find problems

If you find problems, bugs, spelling mistakes or any other issue with the developer site. Either let us know via the issue tracker on github project, or if you feel up to it, fix the problems in your fork and send us a pull request.

Create new tutorials

Got an idea for a new tutorial? Great, we’d love to have more tutorials on the site. But, before you spend your hard earned time off creating one let us know what your plans are with a new issue in the github repo, that way we can make sure we’re able to help you make the best tutorial possible. And prevents you wasting your time if it’s not something that we can use on the site.


Platform Game Starter Kit

Our new hero

Our new hero

Today we’re pleased to introduce the updated, all new and fancy Platform Game Starter Kit. We’ve worked hard with the talented artist  from SWOOOP to provide a complete set of code and assets for you to build your own platform games.

From today, when you choose to create a new project you’ll be given the option to start using the new Platform Game Starter Kit. Your new project will contain a short, but full, platform game.



The Starter Kit contains the following assets:

  • Our hero Playbot – a fully rigged and animated robot character for you to use.
  • Idle, Run, Jump and Die animations for Playbot
  • A set of platforms in various shapes and sizes from 1×1 upto 4×4
  • Spike, our dumb and stupid AI bot
  • Punch, still pretty dumb, but don’t get too close or he’ll shoot.

We’re also supplying all the code for the game:

  • Platform Character Controller – the player
  • Enemy – a simple enemy AI
  • Enemy Punch – a simple enemy AI which can shoot at you
  • Mover – a moving platform
  • Goal – the target for the level
  • Damagable – add health and damage to an Entity

We’ll be writing more about the Platform Game Starter Kit in the next week to give you tips and challenges so that you can make the best use out of it. But before they arrive, create a new project using the kit, try it out and dig into the code to see how it was made.

Have fun, and look out for Punch!

Punch - the bad guy

Punch – the bad guy


PlayCanvas Update 13/06/14


After a busy week here in the PlayCanvas office, we thought what better way to champion our efforts than to give you a taste of whats happened at HQ. We plan to start a series of weekly updates so you know what is keeping PlayCanvas at its best. This week; 

  • We completely reworked our back-end API. All page loads are now 50% to 1000% times quicker.
  • We have also made an improvement to the manoeuvrability of Entities as we introduced a new default Snap option. This function allows you to move incrementally within the PlayCanvas Designer (find more information on the Snap function here).
  • Lastly we are happy to introduce a brand new platform starter kit which features a contribution from the artist who worked with us on Swooop! (read all about it here).

Stay In The Loop

Follow us on Twitter, @playcanvas, for largely technical updates on PlayCanvas.

Like the PlayCanvas Facebook page for our whimsical views on the game dev scene.

Join and start discussions on the PlayCanvas Forum.

Get expert responses to your questions on PlayCanvas Answers.

Snappy New Update

Game developers and the idea of perfection are never far apart and we are pleased to announce a new feature that allows you to be as precise as your project demands. If you were thinking what we were thinking then…SNAP!

snap screenshot

Due to popular demand (coming in particular from PlayCanvas user Crefossus), Entities now move incrementally as default. This feature allows you to quickly measure and perfectly place where your Entities need to be, no need to rotate the camera to make sure your items are perfectly in line.

However if the fate of your game rests on being between our increments, have no fear. Holding shift will disable Snap while in the PlayCanvas Designer, you can also check and toggle the status of the snap function by using the magnet icon on your toolbar. Here’s some help, just in case.


Happy Snapping!

PlayCanvas goes open source

When we first started PlayCanvas (over 2,716 commits ago) WebGL was just beginning to make it’s way from Chrome and Firefox Nightlies into stable releases. Fast-forward to 3 years and WebGL is everywhere, Firefox and Chrome have strong support both on desktop and on mobile. And just this week the final player Apple have joined us with WebGL support for both Safari and iOS.

SWOOOP background

Today, we have some more great news for WebGL fans, game developers and web developers alike.

PlayCanvas Engine is now open source.

The entire runtime engine is available right now on github under the lovely MIT license. Which means you can download it, fork it, and generally use it for anything you like.

Why open source, why now?

Ever since we started the engine open source was always on our mind. We’ve never hidden the source code from developers. Minified versions are available for performance reasons, but during development users always have had full access to the un-mangled engine. This is critical for debugging and fulfilling our mantra to make game development easier.

In reality the engine has been open source since the get go. Officially open sourcing the project was just a matter of time, and the time is now. The engine is mature enough that we’ve established the basic structure, style and functionality but contributors will still be able to make a meaningful contributions to the engine. And of course we’ve now found the time to lay down the foundations of the developer documentation, the API reference, the samples and all the other stuff that makes game development a joy not a chore.

For developers who just want to hack on the code with the overhead of the tools this news is great. Simply download the engine, open up your text editor and get cracking. For those of you who want more structure, and higher level tools, the PlayCanvas platform is a perfect addition to accelerate your game production.

So, this engine? What is it?

In case you haven’t come across the PlayCanvas Engine before, it’s a JavaScript library engineered specifically for building video games. It implements all of the major components that you need to write high quality games:

  • Graphics: model loading, per-pixel lighting, shadow mapping, post effects
  • Physics: rigid body simulation, ray casting, joints, trigger volumes, vehicles
  • Animation: keyframing, skeletal blending, skinning
  • Audio engine: 2D and 3D audio sources
  • Input devices: mouse, keyboard, touch and gamepad support
  • Entity-component system: high level game object management

Design Goals

We had a couple of goals in mind when we originally designed the engine.

  1. It had to be easy to work with.
  2. It had to be blazingly fast.

Simple Yet Powerful

As a developer, you want well documented and well architected APIs. But you also want to be able to understand what’s going on under the hood and to debug when things go wrong. For this, there’s no substitute for a carefully hand-crafted, unminified, open source codebase.

Additionally, you need great graphics, physics and audio engines. But the PlayCanvas Engine takes things a step further. It exposes a game framework that implements an entity-component system, allowing you to build the objects in your games as if they were made of Lego-like blocks of functionality. So what does this look like? Let’s check out a simple example on CodePen


As you can see from the Pen’s JS panel, in just over 100 lines of code, you can create, light, simulate and view interesting 3D scenes. Try forking the CodePen and change some values for yourself.

Need For Speed

To ensure we get great performance, we’ve built PlayCanvas as a hybrid of hand-written JavaScript and machine generated asm.js. The most performance critical portion of the codebase is the physics engine. This is implemented as a thin, hand-written layer that wraps Ammo.js, the Emscripten-generated JavaScript port of the open source physics engine Bullet. If you haven’t heard of Bullet before, it powers amazing AAA games like Red Dead Redemption and GTAV. So all of this power is also exposed via the PlayCanvas engine. Ammo.js executes at approximately 1.5x native code speed in recent builds of Firefox so if you think that complex physics simulation is just not practical with JavaScript, think again.

But what about the non-asm.js parts of the codebase? Performance is clearly still super-important, especially for the graphics engine. The renderer is highly optimized to sort draw calls by material and eliminate redundant WebGL calls. It has also been carefully written to avoid making dynamic allocations to head off potential stalls due to garbage collection. So the code performs brilliantly but is also lightweight and human readable.

Powering Awesome Projects


The PlayCanvas Engine is already powering some great projects. By far and away, the biggest is the PlayCanvas web site: the world’s first cloud-hosted game development platform.

For years, we’ve been frustrated with the limitations of current generation game engines. So shortly after starting work on the PlayCanvas Engine, we began designing a new breed of game development environment that would be:

  • Accessible – Using any device with a web browser, plug in a URL and instantly access simple, intuitive yet powerful tools.
  • Collaborative – See what you teammates are working on in real-time or just sit back and watch a game as it’s built live before your eyes.
  • Social – Making games is easier with the help of others. Be part of an online community of developers like you.

PlayCanvas ticks all of these boxes beautifully. But don’t take our word for it – try it for yourself and discover a better way to make games.

Speaking of Games

It’s all very well talking about engines and tools, but engines are only as good as the games they let you make. Fortunately we’ve got a doozy for you.

SWOOOP title

SWOOOP – mobile browser game built using the PlayCanvas Engine

SWOOOP is a great demonstration of what you can achieve with HTML5 and WebGL today. The game runs great in both mobile and desktop browsers and PlayCanvas also supports publishing to App Stores through third-party tools like Ludei’s CocoonJS or the open source Ejecta project.


So you want to help us make the best damn 3D engine on the web? Great! Head over to our github page. Get cloning, starring and forking while it’s fresh!

Stay in the Loop

Lastly, stay in touch, we’re a friendly bunch.

Follow us on Twitter, @playcanvas, for largely technical updates on PlayCanvas.

Like the PlayCanvas Facebook page for our whimsical views on the game dev scene.

Join and start discussions on the PlayCanvas Forum.

Get expert responses to your questions on PlayCanvas Answers.

We’re super excited to see what the open source community will do with the PlayCanvas Engine. Get creative and be sure to let us know about your projects.

Toodle pip!