New generation of @insomniacgames tools as webapp
This year at the Sony GameTechConference (GTC11) I spoke about the next-generation of Insomniac Engine and Tools development. One of the biggest changes we shared was our move to develop our new suite of tools as a web application.
Rather than continuing to fight against or completely ignore the internet and the expectation of connectivity, we have decided to fully embrace it instead. We figure this whole web thing probably isn't a fad. 😉
Things to note:
(1) Our tools run completely inside a browser. In particular, we're focued on Chrome support. As we're developing internal tools, we don't need to worry about broad support for old browsers (or any other browser at all, really.)
(2) The 3D window is a plugin that uses our own engine. Actually, it's really just a generic plugin that allows us to insert *any* windowed application into the browser. In internet terms that's a major security issue. In terms of internal tools, it's a non-problem and extremely useful to have full access to the local client.
(4) The back-end of the tools (e.g. asset data, level construction, undo/redo, etc.) are all controlled via a REST(-like) interface. Everything is done via this interface. The UI is completely decoupled from the back-end, which has made UI development a simpler, faster and more straightforward process for us. It also allows us to do things like write perl scripts which create or edit existing scenes or anything else we like.
Like all things, it's a work in-progress. And we have learned a whole lot of hard lessons from the process!
Some screenshots of the tools running in a browser window:
Also, for those interested in more of the back-end details, last August Chris Edwards (Sr Engine Programmer) gave an internal talk on the design of the server (lunaserver). Quite a few of the details have changed over the last 6 months, but the essential design remains the same so far.
We're really excited about the direction and future possibilities!
I hope you've found this little taste of what we've been cooking up in the Insomniac Core Team Kitchen interesting.