OK, here we go!
[quote:1m2py1rd]1. How many years did you spend working with HTML5 ?
Since 2011, so around 5 years now.
[quote:1m2py1rd]2. Why did you choose HTML5 instead of an other technology ?
At the time, it was a gamble. In 2011 the idea was HTML5 would eventually replace Flash. That was all we were planning on! Even then there were lots of people saying it was ridiculous to pick HTML5 over Flash. At the time, they had a point - canvas games only ran in Chrome and Firefox, and usually very slowly with software renderers, and poor support for lots of important features like audio. I think most users who were not around in the early days don't realise just how far things have come! But I always focused on where things are going more than where they are now. I thought HTML5 had a brighter future. It worked out even better than I imagined.
While I know our resistance to native exporters frustrates some users, in my mind it's much the same thing as the HTML5 vs. Flash debate in 2011 - the direction things are going is more important.
Sometimes I wonder where all the people who thought Flash was a better choice went.
[quote:1m2py1rd]3. Do you have some statistics about the devices where C2 games are published on (like Wii U) ?
Sorry, I don't think we can share that in this interview
[quote:1m2py1rd]4. Does HTML5 fit all your technological needs ?
Do you feel frustrated sometimes to not have what you want ?
It pretty much has 99.8% of what we want. In the early days it was often frustrating, because simple things like playing multiple sounds at once were unsupported on some platforms. But nowadays with the maturity of the platform - e.g. Web Audio is a great audio engine that browsers provide! - we pretty much have everything we need.
[quote:1m2py1rd]5. Do you think HTML5 is strong enough to deal with 3D efficiently ?
Yes, WebGL is native-grade OpenGL ES 2, and soon we'll have WebGL 2, which is equivalent to OpenGL ES 3. I don't have that much experience in 3D development, but I think the OpenGL ES 3 feature set can cover a lot of 3D games.
[quote:1m2py1rd]6. Is C2 ready for 3D game development ?
Not really! It's a 2D editor. We're asked all the time about 3D, but we're not ready to do that, I think it amounts to an entirely new and separate product. Some third-party developers are experimenting with 3D addons though.
[quote:1m2py1rd]7. Should HTML5 work on an easier 3D engine ?
WebGL can be hard to work with, but it's low-level and flexible. Anyone who wants an easier-to-use API can use a library like Three.js or the Babylon engine. So no, I don't think there should be a new 3D engine specification - it's a good idea to expose the low-level components, and let libraries or frameworks simplify for people who want that.
[quote:1m2py1rd]8. Do you think HTML5 is a good way to make mobile games ? Why ?
It is now. It took longer to mature, since the software and hardware took longer to catch up. But these days there is virtually no performance or feature disadvantage to a native app made with HTML5 compared to running in the device's browser. They all have GPU-accelerated rendering and JS engines that JIT-compile to machine code. Also modern phones and tablets are about as powerful as some laptops. So this idea that mobile devices are weaker and need a reduced experience will probably soon be irrelevant.
[quote:1m2py1rd]9. HTML5 isn't directly supported by mobile devices so we have to "convert" our games.
Do you think these converters are strong enough to deal with C2 games easily ?
Arguably, HTML5 is directly supported on some mobile devices - both Android and iOS provide a system web view for native apps with browser-equivalent features, and on Android it auto-updates with Chrome too. However you need services like the Intel XDK or PhoneGap Build to actually build an app that you can publish. I know there's been some frustration with some of these services, but it's difficult for us to provide equivalents and the services do a lot of useful work for free, so it's definitely worth using them. Lots of users are successfully publishing mobile games with Construct 2, so it does work.
[quote:1m2py1rd]10. I know you stopped to work with Ludei and started to work with Intel XDK, why ?
In the early days we had a lot of trouble getting our engine to work with their non-browser engine. These were always really hard work so eventually we deprecated them all in favour of real browser engines. Eventually Ludei announced pricing which cost something like $500 to remove a splash screen. I think they are going after a different market. For C2 users that's way too expensive. Since then I've just focused on the Intel XDK and PhoneGap Build.
[quote:1m2py1rd]11. Even if the technology works well, I noticed it was hard to add plugins like Ads, IAP and other things due to incompatible versions for the most of them.
Did you know it and how can we prevent ourselves to this problems ?
This can be tricky. We need to rewrite the official Scirra plugins to make this work better. It's something we intend to do soon.
[quote:1m2py1rd]12. What is actually your favorite converter ? Why ?
I like PhoneGap Build because once it's set up, it's really easy - you just upload a zip and get back an APK for Android and IPA for iOS. For some reason though most C2 users go to the Intel XDK. I'm not sure why. I guess we do feature them on our front page.
[quote:1m2py1rd]13. Don't you think C2 should have its own mobile compiler ?
As I mentioned before, this is really hard. We're a small company, and running compilers can be expensive and difficult. And the existing services are free. So it seems better to use the free services. If they did for some reason all close or become super expensive, we'd look in to providing our own service. We'd probably have to charge for it though, to offset the work and maintenance costs of it.
[quote:1m2py1rd]14. Do you think web browsers are easy to manage ? Do you still feel the "browser war" ?
Browsers are great to work with, their developer tools are very sophisticated (comparable to Visual Studio IMO, which I've used a lot for native development) - and they're free! The browser wars are still going strong too, which is good for everyone. Microsoft even made a whole new browser to keep up (Edge). Everyone's working hard to keep making their browsers better and win more market share.
[quote:1m2py1rd]15. Do you think that an in-app mobile browser can happen ?
Yes, it is already possible, IIRC there's a third-party plugin that can do it already? It just shows an iframe so you can load web content in-game.
[quote:1m2py1rd]16. Due to HTML5, you clearly depend on web browsers and in-app mobile browsers.
Is it easy to manage them to be sure to be compatible with all mobile versions ?
In general, the web views are identical to the browsers, and everything "just works". However Apple generally throw in a really awkward bug with pretty much every single iOS update, and WKWebView has proved very difficult to work with as well. But 95% of our code runs identically on all platforms with no modifications.
[quote:1m2py1rd]17. Do you think web browsers implement fast enough HTML5 functionalities ?
What about in-app mobile browsers ?
Chrome is definitely leading the way here, but Safari is lagging behind quite a lot. Some people have even said Safari is the new IE6. I think that's going too far, but it's true that Safari has both the slowest development cycle and the fewest modern features. Even Microsoft Edge is doing better now. Times have changed!
[quote:1m2py1rd]18. Don't you want to build your own in-app mobile browser ?
I'm not sure exactly what you mean here - why would we do that? Browser engines are worked on by hundreds of engineers at huge corporations, often over a period of decades. We're not in a hurry to take that on ourselves
[quote:1m2py1rd]19. Would you like to be available on some devices that aren't actually HTML5 compatible ?
The big one left is PS4. But we cover pretty much every other device on the market right now. So hopefully Sony will catch up with HTML5 support at some point.
[quote:1m2py1rd]20. Is multiplayer system well supported on web browsers ?
What about in-app mobile browsers ?
It runs on Chrome and Firefox on any platform (except iOS, which doesn't really support other browsers - Chrome and Firefox on iOS are just skins over Safari). So we need to see support in Safari and Edge. I think they're working on it.
[quote:1m2py1rd]21. How can you explain that there is not much Multiplayer games on Scirra Arcade ?
I think the main difficulty is multiplayer games are fundamentally hard to make. You have to think about multiple game states all slightly offset in time, and all interacting with each other. For an engine aimed at non-programmers, that's quite a jump to make.
[quote:1m2py1rd]22. Do you know some C2 games using persistent universes ?
No, I don't think I've seen one - that would require server-side coding, which again is quite a jump to make.
[quote:1m2py1rd]23. For you, is HTML5 as powerful as a native app ?
I think these days I can get away with saying yes.
[quote:1m2py1rd]24. For you, can HTML5 be the standard for app development ? Why ?
I don't know if it will be the standard choice, but it's certainly a good one to consider. The key point for us is that we really can have a single codebase which runs on pretty much all platforms.
[quote:1m2py1rd]25. Can you tell us what do you plan for C3 about HTML5 work ?
I'm afraid I can't give any more information on C3 right now. Sorry! We'll release news when we are ready. But we've already said in the past we aim to use the same runtime as C2 has in C3.
[quote:1m2py1rd]26. Do you know some other HTML5 game editors ?
There are lots on the market now with the ability to publish to HTML5! I think it shows it's a much-wanted feature. I won't list them here, I'm sure you can find a few on a major search engine
[quote:1m2py1rd]27. If an HTML6 would be planned, what can be your expectations ?
I just mentioned on the forum today in another thread mentioning "HTML6" (which AFAIK isn't even planned right now). These days browsers add features all the time, regardless of whether the specification is HTML5, HTML5.1, HTML6 etc. So "HTML6" would probably just be taking a new set of features that already exist and calling it by a new name. Also, technically features like WebGL and WebGL 2 are not part of the HTML spec, they are done entirely independently. So we can still see new features which aren't technically part of HTML5.
Still if I could pick one new feature I wanted: better support for dual-GPU laptops. There are loads of laptops with a weak low-power integrated Intel GPU, and a powerful AMD or nVidia gaming GPU. In the browser there is no way to choose which you get. So often people run a game and WebGL ends up running on the Intel GPU, and performance is rubbish. There are tools to change the GPU that gets used, but you have to do it manually and they aren't always very intuitive. So I really want a way for the C2 engine to say "use the better GPU only". Then we could guarantee better performance on a lot of systems.