Jump to content
  • Advertisement
  • 03/17/16 06:29 PM
    Sign in to follow this  

    Online Video Game Engines: Discover Why You Should Use Them

    Engines and Middleware

    hafo
    • Posted By hafo

    Disclosure: I am the CMO of WiMi5, an online HTML5 game engine, which is mentioned in the article. Onine video game engines are a new concept for many developers who are used to using desktop tools. In this article, we're going to go through the advantages and disadvantages that a solution like this offers when compared to the classic desktop ones. It must be kept in mind that some of the advantages described here don't exist yet in any online video game engine, but they should be possible at a technological level. In some cases, they're advantages that we've already seen in other types of creative collaboration and online solutions and they would be perfectly applicable to an online video game development engine. The tendency to use web applications to perform tasks that used to be done in desktop applications is nothing new. The revolution of Software as a service (SaaS) and of the first projects using applications with centralized hosting goes back to 1960. It's a tendency that has been developing faster and faster in the last few years thanks especially to all the new web technologies that have come out recently. We've seen this evolution in all types of services and tools, some of which are listed here:

    • email: perhaps the clearest example is email. More and more people manage their personal and business email from a browser. Email management web applications, such as Gmail and Outlook, have become more efficient, usable, and productive, and are used on a massive scale from any device.
    • office IT: this is another clear example of how different office applications, such as text editors, spreadsheets, presentation editors, etc. have migrated to the web. Since 2005, Google Docs has progressively been creating an alternative to the classics, Microsoft Office for Windows or iWork for Mac. In fact, Google claimed in 2015 that their their plan was to take away 80% of Microsoft's business from MS Office. Microsoft's response, launched in 2011, was an online version of their suite, Office 365. Here's a great comparative analysis of both solutions.
    • image editing: in this area, there is no clear success story like in the other two areas above, but many initiatives have come up in the last few years to rise up as the model for the online Photoshop. Examples such as Pixlr.com or Fotor.com show the potential of this type of web app. In any case, even if they aren't as widely received, image editing webapps are integrating themselves well into other types of services. One example of this is how Aviary (later purchased by Adobe) integrated itself as the image editor inside the newsletter management service of Mailchimp. The basic image editing functions are integrated into the online newsletter creation process, easing the workflow for the campaign author.
    There are definitely many areas where change has already happened or is in the process. The sector of the ERPs and the CRMs is another example. In web page design, we've seen how we've gone from spending the last ten years using tools like Dreamweaver to seeing how WordPress has become the tool for creating 25% of the websites in the world. This last piece of information is very important and relevant to us, because in our judgment, this perfectly represents the spirit of WiMi5: to construct a web environment that allows anyone, from neophytes to professionals, to create a video game, where there is also an ecosystem of people with different roles who collaborate to extend the platform, to create video games or to exchange components to make their development easier. In fact, this is the reason we've adopted our slogan: WiMi5 is the WordPress of video games. Well, let's get on now with the list of advantages and disadvantages of using an online video game engine to develop your projects.
    HTML5-game-engine-1024x576.png

    Current Advantages of Using an Online Video Game Engine

    No dependence on platform

    An online editor allows you to work on any operating system that has a web browser, regardless of whether it's a Mac, Windows, or Linux machine. Nothing needs to be installed since you're accessing via a browser. Access is instantaneous.

    Permanent saving

    An online video game engine normally makes saving a project continuous; for example, on WiMi5, all operations are automatically saved. This makes the developer's job easier since they don't have to be saving a project constantly in order to avoid unexpected losses.

    Security

    If your computer fails, has a virus, gets fried, is stolen, has its hard drive crash, or is hit by any other type of bad luck or misfortune, it won't affect the development of the video game. All the data are stored on the cloud and available at any time from any device.

    Immediate updates and improvements

    Given that the development tool's software is managed directly by the service provider, they can update the current version at any time with a new one, introducing improvements and fixing bugs permanently. This makes updating to new versions of the game engine greatly easier, since the game developer doesn't need to download new versions or install patches.

    From the web, for the web

    Finally, there is one advantage that almost establishes itself as an ideological position: Creating content for the web from the web. Because of the speed of distribution, agility, simplicity, coherence, and consistency in the development and creation; the adaptation of the final product to the medium; and an endless number of other reasons, creating content for the web from the web is a winning bet. At WiMi5, we believe the web is going to be the next great gaming platform. And it seems logical to develop games from the web itself if the technology allows for it. This is now a reality with HTML5, and all that's needed is to consolidate and mature the different online video game development tools that are appearing, including WiMi5.

    Integration with other web services and applications

    Another advantage that an online development engine offers is the possibility to integrate with other web services and applications. In the purest mashup style, an online video game engine can be integrated, for example, with the APIs of services such as Dropbox, Google Drive, or Box for storing assets; Charbeat or New Relic for analytics; GitHub or Bitbucket for version control; Trello or Wunderlist for task management; any social network; etc, etc. The possibilities are endless.

    Future Advantages of Using an Online Video Game Engine

    Version control

    We've all worked with Google Docs at some point, and we know how well it handles the control of the different versions of documents. An online video game engine based on infrastructure residing in the cloud allows you, as with Google Docs, to control the versions based on the modifications and changes carried out by the developer. Moreover, it should also let the developer be able to decide when to save a specific version and go onto the next.

    Work in collaboration in real time

    With an online video game engine, several developers, with different profiles, can work on the same project. A designer may be modifying the graphics of a background while a programmer is defining the parallax for that same background. What's more, they can be doing it in real time, each seeing what the other is doing. To all this, we can add a user management system with different roles to cover the different areas of the development company.

    Immediate communication

    In an online, collaborative games development tool, communication can be immediate and very focused on the question at hand. Developers can communicate via instant messaging systems integrated into the tool itself. They can also work with a system based on the comments that are being left about the different elements of the game, such as assets, scripts, etc.
    WiMi5_HTML5-game-engine-1024x576.png

    Disadvantages of an online video game engine

    Need for a permanent connection

    This is something obvious: if there's no Internet connection, you can't use an online service. While there are of course some solutions, such as how Google Docs allows you to work in offline mode, this loses many of the virtues that online development in real time offers. It's also necessary for the Internet connection to have a minimum level of quality as far as bandwidth is concerned. While developing a videogame, very large assets, in terms of filesize, may be used, and working with them can use up a lot of bandwidth.

    Server access

    In general, SaaS services are criticized by users who don't have access to a server and the data and files that are executed from it, since this is controlled by the company providing the service. In fact, Richard Stallman considers that the use of this type of service is a violation of the principles of Free Software. In any case, this can't be applied to all SaaS products, since on many occasions, these products have free source code, allowing users to access all the files and source files that make up the service. In any case, this issue has a lot to do with the culture or belief that having all the data on one's own computer is better. The trend now is for this belief to be waning, helped along especially by cloud data storage services such as Dropbox, Drive, etc.

    Conclusion

    The online game engines look promising. Some solutions are already working and stablishing new standards of a new way of creating video games. The 3 most interesting examples of online game engines are PlayCanvas, Goo Create and WiMi5. PlayCanvas and Goo Create are both focused on 3D game development while WiMi5 is focused on 2D game creation. WiMi5 also integrates publishing and monetization as main features of its game engine.



      Report Article
    Sign in to follow this  


    User Feedback


    Nice write up, however, I would not tag being cloud based as an inherent security advantage. If the recent spate of information leakage from big name companies and even the government has taught us anything, its that as long as the computer is on the internet ( and I use that term loosely ), its vulnerable.

    Share this comment


    Link to comment
    Share on other sites
    I think your disadvantages list doesn't have enough items. Certainly online engines can never run at the same speed as a desktop solution. WebGL isn't as feature complete as DirectX or the latest version of OpenGL (no computer shaders, limited GLSL support, ect) Limited peripherals support (Controllers, virtual reality)

    Also, version control isn't a feature unique to online game engines so I wouldn't list that as an advantage.

    Share this comment


    Link to comment
    Share on other sites

    Some of the things you listed as advantages can be disadvantages in certain cases.

     

    About automatic updates, we often lock our software versions before delivery, and there is a huge reason for that. Updates, changes coming from devs are not always positive, sometimes they change behavior of existing tools, introduce bugs. Working with an ever changing software just before delivery... is a nightmare. So that's rather a huge disadvantage than an advantage.

     

    Installing patches, and new versions is usually not an issue, because in every production environment there is a sys / dev ops team handling all this. Everything automatized and nicely controlled.

     

    Permanent saving is usually not an issue. Native tools can be stable enough + you can have autosave working. Unless your dev environment crashes every 10 minutes, you won't have problems with this either.

     

    Security, at some places you can't have internet on the workstations. Or you have special stations to bring in anything to your pipeline. Do any of the listed examples offer self hosted solutions?

     

    There are also a huge performance loss compared to native tools on every platform. If you want to stay competitive, that's also not something you can afford. Even if you are doing 2d games for mobiles, how would your users feel about shortened battery life?

    Share this comment


    Link to comment
    Share on other sites
    This all seems to be oriented around HTML5 style targets, which is all well and good for some people. But not so good if you want to hit the console market and so on.

    Share this comment


    Link to comment
    Share on other sites
    It's a tad disingenuous to echo Wikipedia's history entry that SaaS started in the 1960s during the mainframe era. Practical analogues to modern SaaS solutions for consumer software don't really crop up until the early 2000s, and certainly don't become commonplace till the mid 2000s.

    Share this comment


    Link to comment
    Share on other sites

    I think your disadvantages list doesn't have enough items. Certainly online engines can never run at the same speed as a desktop solution. WebGL isn't as feature complete as DirectX or the latest version of OpenGL (no computer shaders, limited GLSL support, ect) Limited peripherals support (Controllers, virtual reality)

    Also, version control isn't a feature unique to online game engines so I wouldn't list that as an advantage.

    Hi HappyCoder,
     
    Regarding the speed: It depends on the point of view: if you want to render or shade an image would you use your own machine or 100 cloud based machines?
     
    I agree with you that WebGL isn´t as complete as OpenGL or DirectX. But look at the initial release of OpenGL (January 1992), DirectX (September 1995) and WebGL (March 2011). Don´t you think WebGL has a good speed in adding new features?

    Share this comment


    Link to comment
    Share on other sites

     

    Security, at some places you can't have internet on the workstations. Or you have special stations to bring in anything to your pipeline. Do any of the listed examples offer self hosted solutions?

     

    There are also a huge performance loss compared to native tools on every platform. If you want to stay competitive, that's also not something you can afford. Even if you are doing 2d games for mobiles, how would your users feel about shortened battery life?

     

    Hi sirpalee,

     

    WiMi5 currently does not offer a self hosted solution, but will do in the future. I don´t know if PlayCanvas or GooCreate offer a self hosted solution, they are both open source solutions so you probably can host the solution yourself.
     
    I think that if you want to develop a graphic intensive game, you almost certainly want to build a native app. But if you want to create casual 2D games you don´t have to be so concerned about performance. There is a point to have in mind when you are considering to develop with native or HTML5: the cost of development. If you have to develop a game for the lowest cost at the quickest speed on multiple mobile OS types, a HTML5 game is one of the most preferred way to go. 

    Share this comment


    Link to comment
    Share on other sites

    wimi5 cool game development enginerolleyes.gif, I played games with their website and I'm impressed

    Share this comment


    Link to comment
    Share on other sites
    I was going to write up a note about some of those advantages aren't necessarily advantages when I saw that sirpalee beat me too it. I agree with him. smile.png
     
    For the "Immediate Updates and Improvements" - sometimes patches to the server will break your code.

    As for "Integration with other web services and applications" - any application with a connection can hit other web services and applications. Not just those tied to online video game engines.

    Share this comment


    Link to comment
    Share on other sites

    Practical analogues to modern SaaS solutions for consumer software don't really crop up until the early 2000s, and certainly don't become commonplace till the mid 2000s.

     

    Yes, Microsoft made sure of that. :P

     

    Netscape was heading in SaaS direction in the late 90's, before Microsoft bundled Internet Explorer with Windows 98 to put a stop to it. That set web development back nearly ten years!

    Share this comment


    Link to comment
    Share on other sites

    Another issue with SaaS is what do you do when the service goes away.  
    Facebook recently announced the closure of the Parse BaaS. I know dozens of develops using this service. At least one of them has several million users and theres no polite way of saying it he is F**ked.

    The exit strategy for most SaaS companies is to make something cool, get noticed and then get acquired.  Once they've been acquired you can't guarantee the new owner won't just close them down and soak up the talent.


    Now I'm not saying online engines aren't cool.  They are awesome to experiment with and as a small hobbyist are a great way to while away the time but, as a professional indie developer I think there is a lot of risk relying on SaaS tech to run your buisness.

    Share this comment


    Link to comment
    Share on other sites

    I feel it would have been more appropriate if this post had a decent disclosure clause at the beginning pointing that you are promoting one of the services outlined in the article, rather than having to bump into it halfway through.

     

    Either way, I have to agree with the comments above, the comparison is far too superficial and makes way too many assumptions.

     

    Allow me to point out some flaws in your arguments:

     

    1. No dependence on platform - this is simply not true. Your browser is your platform and your application is entirely depended on that. Additionally, the same browser has a dependency on the OS, so that's double dependency. Can I run your service on Konqueror? IE8? Mobile Safari? Does it behave the same on Firefox 44 on Windows as it does on Firefox 32 on OSX?

     

    2. Permanent saving - this one is open to interpretation. I don't always want to save every single thing I do - especially with a limited undo stack. What if I'm experimenting with something and I dislike it - do I just hit undo a million times until I reach the previous desired state? what happens if my browser crashes after making an edit I didn't like - it's the same scenario of an application with explicit saving option crashing without the user saving - not really an advantages, just a different approach to shooting yourself in the leg.

     

    4. Immediate updates and improvements - the single best reaction I have to this is NO. Seriously, simply put this is probably one of the worst things you could ever deal with. I've worked with several third party engines in my career and upgrading the engine version mid project was something that we would rarely do. While middleware upgrades do tend to fix bugs and add features, they also tend to introduce new bugs and breaking changes - making you chase a moving target.

     

    5 From the web, for the web - I've never developed an XBox360 game on an XBox360. the tasks and machine interactions involved in creating a game differ greatly from playing a game.

     

    Finally, let me apologize if I came off too negative. I think you have a cool product and I think this is a subject that's worth discussing. But the arguments you made did not make consider using an online game engine.

     

    Perhaps you should focus more on who the target audience is and what advantages you have to offer them - is this a tool for hobbyists? digital agencies trying to create interactive and game experience based campaigns? is this a tool for rapid prototyping of ideas?

     

    I think the biggest advantage you've mentioned is the ability for online collaboration. That's one thing all the tools I've worked with lack at.

     

    Some other possible advantages (both present and future) might be:

     

    1. Tight integration with other online services - get all gmail mails with a certain tag fed directly into your editing environment, one click "mark done" button that feeds directly to trello or basecamp, auto generated changelog message posted to slack - and the list of possible integrations on the editor level is nearly infinite.

     

    2. One click testing on the actual target platform (since we're making web games in the web)

     

    3. Integrated quick access to relevant manual pages and knowledge base.

    Share this comment


    Link to comment
    Share on other sites

    I feel it would have been more appropriate if this post had a decent disclosure clause at the beginning pointing that you are promoting one of the services outlined in the article, rather than having to bump into it halfway through.

     

    Thanks for your feedback martin@282, I will include a disclosure at the beginning.

     

    Regarding your point 1: don´t you think that, if any dependence, it would be dependence on HTML5? That is a standard technology and browser developers should fit their product according to this standard. 

     

    Regarding point 5: from the web, for the web. It´s related with all the possible advantages you are proposing. 

     

    Finally thank you very much for your suggestions about advantages. 

    Share this comment


    Link to comment
    Share on other sites

    Regarding your point 1: don´t you think that, if any dependence, it would be dependence on HTML5? That is a standard technology and browser developers should fit their product according to this standard. 

     

     

    That is a bit naive view of standards... As an example, our games run on the industry standard called "OpenGL".  Still means a lot of tweaking and testing for different platforms, and keeping track of lots of tiny differences and minor and major bugs between driver manufacturers, hardware, and OS, multiplied with the different versions of it found in the wild...

     

    A user of your middleware would expect you to guarantee it will work on different implementations of HTML5, but you will likely always have tiny problems on some of them. Those tiny problems is what the user of the engine will have to work around to ship a product, and they can't wait for you  to fix them. It is also the reason they DONT want updates at any time, only at very controlled times, and for very controlled reasons. 

    Share this comment


    Link to comment
    Share on other sites

    I tend to scoff at web technology so I automatically am turned off and read with great scrutiny. For most of your listed advantages of an online engine, they already exist in the domain of desktop development or are in-fact not as much of an advantage as you may think.

     

    In your header you want to talk about the Advantages and Disadvantages of a web based engine. For the many advantages listed, their are but a mere 2 disadvantages. This article reads more like a marketing campaign than a discussion.

     

    Platform dependency: Chrome, IE, Edge, Fire Fox, Safari, to name the big ones. These are all platforms which loosely follow a set of WC3 standards, guaranteeing not everything is going to work the same on every platform, and this is not including the web technologies you use in the engine such as HTML, JS, CSS, XML, XSL and whatever else is involved.

     

    Permanent saving: Saving is not compiling, it is not an intrusive action that impairs the work flow of the developer. Saving happens when you compile, saving happens when you click a button. Unexpected loss is not exclusive to desktop. You can save every single keystroke if you want, but as soon as someone forgets to pay the server bill, your project goes kapoot.

     

    Security: You basically surmised that the web is impervious to damaging attacks or other means of data loss or corruption and is some how more reliable than even a simple NAS setup.

     

    Immediate updates and improvements: Updates are not always improvements and not always desired as already discussed.

     

    Work in collaboration in real time: If a graphics artists is working on the background view of a level and some other jackwad is adjusting the parallax at the same time, the artist no longer knows what to expect of his/her canvas and what their art is going to look like anymore. Iterative development even on graphical aesthetics is important. 

     

    The nice advantage I would agree with is implicit web service integration, but even that is not exclusive to the idea of a "web game engine".

    Share this comment


    Link to comment
    Share on other sites


    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!