Offline editor engine

I’m back! Just wanted to follow up on your comments, @EmergoEntertainment.

So first up, I want to highlight some important work we’ve been doing related to the PlayCanvas back-end. About 18 months ago, we started to completely rearchitect our back-end infrastructure with a few goals:

  1. Reduce downtime - We wanted to make PlayCanvas even more reliable.
  2. Reduce latency - We wanted to improve PlayCanvas’ (network) performance, and give everyone a great developer experience no matter their geographic location.
  3. Improve scalability - We wanted to adapt to serve a growing userbase.

The outage we had earlier today falls under goal 1. And while we are close to finishing our back-end upgrade, we’re still a couple of days away from deploying a solution to what was today’s issue. So while I’m disappointed about today’s disruption, I’m really excited to see all the hard work from the last year and a half finally come to fruition. Expect to see a blog article about all the back-end improvements sometime in the not too distant future.

Now, despite all that, getting hold of some flavor of a local Editor is a request we’ve seen from time to time. PlayCanvas in its current form is a hugely complex thing, especially in terms of its back-end. To install it is non-trivial. I don’t think it is practical to offer it as a product in that form, at least not at the moment. In addition, the collaborative/real-time nature of the Editor is fundamental to how it works and would be exceptionally difficult to extract/disable.

That said, we are on a journey at the moment that, so far, has gradually open sourced parts of the Editor:

  • PCUI - The Editor’s front-end framework.
  • PCUI-Graph - The PCUI plugin for rendering node-based graphs used in the Editor’s AnimStateGraph Editor.
  • Observer - The observer pattern implementation used by the Editor.
  • Editor API - The core functions of the Editor wrapped up in a module and exposed as an API for your own plugins.

In addition, we’ve been developing other ‘offline’/client-side tools too, like:

When I last responded in this thread, none of this technology was open source.

So what does this mean for the Editor? While I don’t think we’ll be in a position to release an offline version in the near future, I believe we are on a path that will allow for this some day (in some form or other). Fundamentally, we are committed to an open source mission and enabling developers to work in a way that is best for them. So stay tuned - we’ll try to keep the community up to date on our plans in the months ahead.

11 Likes