Auralux Release For Browsers Shows Emscripten Is Reaching Indie Devs 44
New submitter MorgyTheMole writes Porting C++/OpenGL based games using Emscripten and WebGL has been an approach pushed by Mozilla for some time now. Games using the technology are compatible with most modern browsers and require no separate install. We've seen Epic Games demonstrate UnrealEngine 4 in browser as well as Unity show off a variety of games. Now as the technology matures, indie devs are looking to get into the mix, including this near one-to-one port of E McNeill's Auralux, a simplified RTS game, from Android and iOS. (Disclosure: I am a programmer who worked on this title.)
I appreciate your hard work (Score:2, Insightful)
but please leave real development to real developers that use real technologies on real platforms. No, we don't need 8 core machines with 16gb of ram to be able to play a game that late-90s computers could've handled natively. Games do not belong in the browser.
Re: (Score:1)
Exactly.
The html5/javascript platform is inferior, FAR inferior to native code,
HARDWARE-Drivers-HAL->Operating System->DirectX->Web Browser->Javascript->Emscriptem->Game
Or the current flavor of the decade:
HARDWARE-Drivers-HAL->Operating System->Virtualization Layer(eg VMWARE)->Drivers->HAL->Operating System -> DirectX->Web Browser->Javascript->Emscriptem->Game
It's quite honestly stupid when a game console with 1/4 of the CPU and GPU power can beat a desktop ma
Re: (Score:2, Insightful)
Oh please, the same arguments were made when API's like DirectX first started surfacing. You may as well argue that unless you're programming directly at the assembly level, you're wasting your time.
There are plenty of valid reasons for pushing this technology to the web browser. Nobody's claiming that all your future AAA games will be browser based, but it's currently the best way of making an interactive experience that's not tied to a specific platform. It makes the most sense for indie devs as well, who
Re: (Score:1)
Why would you WANT to develop a game for the browser? Just like I don't want to give up my background in actual computer science and strongly-typed languages for the sake of learning a mountain of flubbery web technologies, I suspect the answer will be exactly what that other dude said: the web made us all LAZY. JavaScript is a shitty language, pure and simple, and I seriously doubt you want to switch from it for that very reason.
Have you ever developed a complex application in a more native language, even
Re: (Score:1)
Learn what Emscripten is and does before you start saying such odd things. The entire point is to use whatever language you want, and it complies down to a subset of JS that the browser can run fairly closely to native speeds (1.5-2x as slow so far, and a lot of optimizations haven't been enabled yet like SIMD instructions). Basically it's just like the JVM, just less optimized right now (both in terms of performance and the libraries/API that are exposed).
Honestly, I think people are way too uneducated abo
Re: (Score:2)
Oh please, the same arguments were made when API's like DirectX first started surfacing. You may as well argue that unless you're programming directly at the assembly level, you're wasting your time.
DirectX came with some advantages as well though. Like OpenGL, you ended up with a slower game than writing specialised code for a specific graphics accelerator, but the trade was that you got to support all shipping accelerators (and ones that hadn't shipped yet) by allowing them to write the code once and get a speedup everywhere. With Direct2D, you got things like accelerated sprite drawing from hundreds of graphics cards that all had different interfaces for bit blits. This meant that your Direct2D
Re: (Score:1)
I jut tried it (Score:2)
Just tried it a little. And it really seems to work flawlessly. Smooth graphics and gameplay, and music and sound effects come through just fine. And it's a very nice abstract game too; reminds me more than a little of Osmos in both style and pacing.
Re: (Score:1)
Would this work for CrystalSpace 3d? (Score:2)
gyring and gimbling (Score:2)
I guess this kind of thing will become more common as Flash recedes into irrelevance.
Re:Works in Safari (Score:4, Interesting)
If you change the user agent to Chrome - Mac. Seems fairly CPU intensive though, managed to get the fans on my MacBookPro spinning up fairly quickly. That could just be the WebGL implementation in Safari not being so crash hot though.
I don't know that Safari's JavaScript engine can optimize for asm.js yet, so I'd guess it's the JavaScript more than the WebGL. Asm.js [asmjs.org] JavaScript works everywhere, but Firefox and Chrome detect and optimize for asm.js specifically [mozilla.org] and get really high performance figures as a result.
Re: (Score:2)
FFS just put LLVM into the browser (Score:1)
Just create a sandboxed version of LLVM and put it into the browser. Or maybe Firefox can adopt NaCl. But translating C into LLVM into JavaScript because a small number of vendors can't be bothered to put an open source plugin into their browser is just ridiculous.
Re: (Score:2)
Yeah, because browsers need more plugins.
One sandbox is bad enough. Start adding more and you increase the attack surface.
Re: (Score:1)
Google already tried that with Pepper, the other browser vendors wouldn't bite.
There is way too many cruft layers already:
Game-Unity(Game Engine)-DirectX/OpenGL-Operating System-HAL-Drivers-Hardware
So you throw Emscripten in to it and now it's
Game-Unity(Game Engine)-[emscriptem-web browser]-DirectX/OpenGL-Operating System-HAL-Drivers-Hardware
Re: (Score:2)
NaCl is the next version of Pepper.
Re: (Score:2)
NaCl is the core of Pepper. Pepper is just a NaCl plugin. They are the same thing for anything less than the most technical of discussions.
Salt and Pepper, git it?
Re: (Score:2)
My understanding is that pepper as a public API is being discontinued, NaCl (which relies on pepper in its implementation), will be the the next public API.
Change the title (Score:2)
Auralux Release For Browsers Shows Emscripten Has Reached MorgyTheMole
Just because you can do something (Score:3, Insightful)
Doesn't mean you should. Congratulations- you managed to write your app in the least effective way possible and got both the performance of javascript and the ease of writing code in C++. You are the biggest idiot on slashdot today. Your reward is getting to write a nice check to Dice for the slashvertisement.
Negotiating around cryptographic lockdown (Score:2)
Re: (Score:2)
So you're saying that the advantage of this is being able to work around the security restrictions on a machine- and you think this is a good thing?
Of course any such machine will have javascript turned off anyway.
Re: (Score:2)
Re: (Score:2)
No, the purpose is to prevent unknown code from running at all. It doesn't matter if its in a sandbox or not. It's an end run around the security, and that's always a bad thing.
Re: (Score:2)
Re: (Score:2)
Just because you can do something (Score:2)
Congratulations, you're being a troll. They managed to take their existing app written for a completely different platform, and port it to the web in a way that runs flawlessly on my four year old laptop. Without having to rewrite the whole thing by hand in Javascript. I'd call that a big win, and a really cool achievement.
Re: (Score:2)
I'm amazed your comment is marked insightful. Admittedly, I wouldn't call asm.js ready for prime-time, it is interesting technology and it will take lunatics like this guy to exercise it just like it took lunatics 15 to 20 years ago to port Doom and Abuse to Linux to begin to see what needed improvement.
I don't plan on buy games for my web browser, but that doesn't mean that an optimized javascript environment couldn't go somewhere as a portable environment. The good parts of javascript are far more eleg
Re: (Score:2)
Native (Score:2)
If your game is written in C++ and OpenGL you can already compile natively for Windows, OSX, iOS, Android and Linux.
Pay for Speed? (Score:2)
Although I enjoyed the game enough to waste 20 minutes on it, I am less than impressed with a "Pay to not watch the grass grow" model of business. So, while it may run blazingly fast, I'm not going to pay to see if that's the case.
As it is, it seems painfully slow, and more than a bit of a rip-off of games like these ones I can play for free in my browser with no speed issues [armorgames.com].
I'm just not seeing the value.