Unreal Engine 3 Supports Flash 11by Andrew Cunningham on October 5, 2011 4:30 PM EST
- Posted in
- Flash GPU Acceleration
Not long after Epic announced OS X support for its Unreal Engine game middleware, the company has another announcement to make: Using the just-released Flash Player 11, UE3 is now coming to web browsers, further cementing the browser's position as the most important thing installed to your computer.
According to Epic's press release, the Unreal Engine will leverage the new Flash Player's Stage 3D APIs to enable browser games with graphics previously seen only on locally installed games. If it can pick up traction, I would expect it to eventually lead to Quake Live-esque browser games that look a bit less like PC games from a decade ago. This could also be great for game demos, which could now in theory be played in a window on the developer's website instead of downloaded to your hard drive.
This announcement should be welcomed for game developers already using Unreal Engine 3, since they'll be able to port their software to browsers without having to rebuild their games from the ground up. Expect to see prettier browser-based games as Flash 11 is more widely adopted.
Post Your CommentPlease log in or sign up to comment.
View All Comments
B3an - Wednesday, October 5, 2011 - linkHTML5 is a HIGHLY overrated joke.
Spivonious - Thursday, October 6, 2011 - linkOnce JS supports going directly to D3D/OpenGL, then we'll see this kind of stuff in pure HTML/JS. I'm confused as to why JS is looked down upon. It's a perfectly good general purpose language. JS interpreters are getting faster and faster every day.
Penti - Monday, October 10, 2011 - linkEcmascript in browsers use virtual machines and JIT just like Adobe's Flash Player. Both WebGL and Stage API is low-level APIs. It's no more or less then AS and AS VM's is. Same technology and can have same performance, it's just packed differently. You can even use the same virtual machines in both the browser and flash player if your really wanted. Games are written for game engines so there is no problem developing games for either platform. Gamecode will be written in C/C++, Lua etc. Nobody in their right mind would write an AS-based game engine with only that platform to target. You compile to AS or AS bytecode, you get better performance by using another language to compile to bytecode then AS3's compiler actually or you compile to JS, it's not much different at all. API's and code will not be done in AS or JS. Not for pure games. That will just be a very small occurrence. AVM och JS VM will just be a layer under all that. You don't write games from scratch in either environments, you always need tools to do so which are not based on either platform.
Matthew Fabb - Thursday, October 6, 2011 - link"Errrr ... any chance of HTML5 supporting the Unreal Engine 3?"
I doubt this going to happen for a couple of reasons:
3) Microsoft has said they won't support WebGL ( the HTML5 3D engine) on IE9 or IE10 because of security risks in giving browsers access to the GPU. This is because GPU drivers are build for speed not security in mind and Microsoft says this opens up a huge security hole. Adobe specifically wrote it's 3D engine with a number of security issues in mind that are not present in WebGL.
4) Even if Microsoft supports WebGL in IE10, HTML5 is still moving very slowly, especially with WebGL. It's estimated that by the end of the year 80% of desktop computers will have Flash Player 11, while it would take many years before that WebGL gets that kind of reach on desktop computers. (I keep saying desktop computers, because these kind of games are not expected to play on mobile and when doing something 3D on mobile you are generally looking at an app than in the browser).
Penti - Monday, October 10, 2011 - linkSure you can compile C/C++ to JS, JS in turn gets compiled to native code by the JIT-engine in the browser. You can do it a few different ways one way that Quake choose was to port the C to Java, port to GWT and compile to Java to Javacript. But yes there is C/C++ converters/compilers too. You could also compile to Java bytecode and compile that to JS if you like to run through hoops.
Emscripten and LLVM route seems to be in a pretty good state and it's technically no worse then a LLVM to AS that Alchemy does. You might still need to rewrite and write a new renderer for both though when porting. Emscripten does support OpenGL to WebGL conversion though. Still not magic though. But the technology is the same gamecode will either be AS/bytecode or JS running on a VM with JIT in both cases. It's not that different, performance can be similar. But games might as well port to NaCl. Native client through chrome frame or such will be available for other browsers. Just stop bullshitting, the difference is only negligible, no magic on either side of the tech. You can't use decompiled code to avoid licensing you simply cannot build games with it. Ecmascript isn't perfect but you can either compile other languages to it, or use extensions and frameworks to enhance it, just as you have to with AS. It's not as simply as to write to pure AS or JS when you need to do something that takes more then a few lines of code. Obviously JS is vastly preferred over Flash in web development that has other quirks. Won't go away because of nonsensical criticism. Neither do you have to suffer with pure JS neither does anybody. If you like to write code differently you can. AS doesn't take you away from that issue.
freezer - Tuesday, October 11, 2011 - link"Obviously JS is vastly preferred over Flash in web development that has other quirks."
Really? And web browsers didn't have their "quirks"?
If you have been in the web development for a long time you'd know that nothing is more frustrating than to fight different web browsers different behauviour. To produce advanced content for web is very cumbersome because of this IF compatibility has to be mantained. The web browsers were full of quirks all the time so your point is not valid. Standards are not good if they're not good and not followed.
The most important favouring Flash for producing multimedia content is that Flash API is designed for multimedia and runs relatively constant between different platforms. Its graphics rendering is much faster than with JS/CSS3. Try to render thousands of self animating particles with JS and you'll see. It offers much more features for creating graphics and animation effects. And Stage3D really opens pandora's box for gpu accelerated 2D and 3D content in Flash.
Flash also supports H.264 streaming and web casting which are very very important features. And it offers also easy tools for designers to produce animation content for web without digging too much into coding. This is something that should not be overlooked.