Flash 11 now supports DirectX and OpenGL using the new Stage 3D API, so any game that uses either DX or OpenGL, which is literally every single major game and game engine, can now run inside Flash. So technically it's Flash that supports UE3 already, and Epic are simply making use of it.
Not true, it just means that any game can now utilize Dx/OpenGL in Flash. Games still have to be completely rewritten in actionscript, meaning that flash does not support games, games support flash, and flash supports directx/opengl.
Nope, games don't need to be rewritten in Flash. Adobe has a tool called Alchemy that converts C++ code into ActionScript byte code. This is how Epic Games converted the Unreal Engine 3. If they wrote any ActionScript for their port, it was very little, perhaps a loader or something to deal with assets, the rest was just C++.
I didn't really necessarily mean they had to be rewritten by hand, just that the code had to be converted to a format that flash can handle. It still means that it's the game that supports flash, not flash that supports the game.
Screw html5. Working with html and javascript is a nightmare vs a normal computing language (actionscript). Granted actionscript is pretty terrible in comparison to many other languages like C/C++, C#, java, it is WAY better than trying to use javascript.
It's not even close. Some of the syntax may have been heavily borrowed by javascript and java, but AS3 is a very VERY different language than javascript.
It does not remotely compare to Flash. You wont ever see anything like this with HTML. It simply cant do many things that Flash can, on top of that it's amazingly inefficient in comparison. You'd have to use javascript and as pointed out above it's a very poor language. Then you'd likely have to use WebGL for rendering, and thats very hit and miss depending on browser. Long story short trying to get anything as complex as UE3 running in HTML5 would be a nightmare and it would never run anywhere near as good as Flash.
Once 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.
Javascript is incredibly slow, weakly typed, and has a great fear of security holes. It is not very well suited for any kind of resource management, and it will likely never support anything more than webgl, which will likely never become that popular due to the sheer difficulty required in making things work. So yes, its GREAT for general purpose scripting, but as a programming language to build large features, it is horrible. It is a scripting language in every sense of the word, and not very viable for large projects or applications.
Ecmascript 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.
"Errrr ... any chance of HTML5 supporting the Unreal Engine 3?"
I doubt this going to happen for a couple of reasons:
1) Epic Games would have to rewrite the Unreal Engine 3, which would be hugely intensive task. Note Adobe has a tool that converts C++ code into ActionScript byte code called Alchemy. I don't know of any such tool for JavaScript.
2) While you can decompile a Flash file (SWF) there are a number of methods of hiding the code and making it difficult to get at the source. However, for a JavaScript library, anyone could grab the source code and use it in their project avoiding Epic Games' licensing and costs.
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).
Sure 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.
You have Emscripten LLVM to Javascript compiler as one early project and route. And others. But that's an interesting platform to build on, competent too.
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.
"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.
It is, but Flash is too. You don't see major web sites created in Flash for a good reason. It's not some magical superior media platform to begin with. It's architecture has hindered development in the video streaming field. Content creation tools are content creation tools. You can use the same animation tool and export for HTML5 if you like. Games will be developed in game engine tools regardless if you target mobile devices, flash or something like NaCl. Safari, IE9, mobile browsers, Chrome with Microsofts extension all supports streaming a unprotected MP4 just fine. Flash player content protection mechanism can be bypassed just fine for that matter and holds no real value. Tools are pretty much separate from target. There simply isn't something like a Flash API or a JS API you work directly against when writing apps at high-level framework and tools, it's really just packed differently and needs different third party libraries and tools to work. Not that it doesn't have merit but the things people talk about isn't coded at the low-level directly on top of the platform by web developers. Stage3D is just a low-level API in of it self. No more capable then WebGL. Stage3D just means a new shading language.
However neither WebGL or Flash 11 means users have drivers to utilize the 3D features. (Or run them accelerated). It's not as simple as it will reach every user out there. You simply wont be doing these kind of things without middleware and content creation tools either way. And there really so no fight to be had, the future obviously isn't single platform or single target. None of them are magical.
Can someone please tell me why would anyone want to play a UE3 based FPS game in a web browser environment as opposed to playing a version that was compiled specifically for the OS that the game is running on? I can understand using flash to make relatively simple games like angry birds, but if you are using UE3 chances are that is not the type of game the developer is creating.
I don't know about an end-user, but from a developer's standpoint... as long as the operating system supports a full implementation of Flash 11, it will run the game.
I don't think the point was to play a 2GB modern FPS game, but perhaps a slimmed down, quick to produce (think iPad game) for the PC. I doubt demos will be out on this, but smaller full games with awesome graphics.
The Unreal Engine is used by countless games, not just bleeding-edge shooters. As long as the game size can be kept reasonable (<10MB), then I can see this taking off.
What I'd love to see is more browsers support running native C/C++ code. Then we really will see gaming in the browser take off.
Got no idea why companies want to add more instability by running their games in a browser.
Tried the BF 3 demo the other day and after about 5 minutes uninstalled it. I dont want a game in a browser, I want a game thats full screen and I can adjust the resolution on it.
Nike TN Pas Cher Femme,sac coach,Nike TN Pas Cher Femme,tn air max,sac a main vuitton pas cher,bottes timberland femme pas cher,nike requin 2010,channel,tn nike pas chere,Nike TN Pas Cher Femme,tn requin
We’ve updated our terms. By continuing to use the site and/or by logging into your account, you agree to the Site’s updated Terms of Use and Privacy Policy.
29 Comments
Back to Article
inighthawki - Wednesday, October 5, 2011 - link
Shouldn't it read Unreal Engine supports Flash 11? That is, "The unreal engine has Flash 11 support." It really confused me when I read the title.formulav8 - Wednesday, October 5, 2011 - link
same hereLifted - Wednesday, October 5, 2011 - link
thisB3an - Wednesday, October 5, 2011 - link
It was kind of correct first time.Flash 11 now supports DirectX and OpenGL using the new Stage 3D API, so any game that uses either DX or OpenGL, which is literally every single major game and game engine, can now run inside Flash. So technically it's Flash that supports UE3 already, and Epic are simply making use of it.
inighthawki - Thursday, October 6, 2011 - link
Not true, it just means that any game can now utilize Dx/OpenGL in Flash. Games still have to be completely rewritten in actionscript, meaning that flash does not support games, games support flash, and flash supports directx/opengl.Matthew Fabb - Thursday, October 6, 2011 - link
Nope, games don't need to be rewritten in Flash. Adobe has a tool called Alchemy that converts C++ code into ActionScript byte code. This is how Epic Games converted the Unreal Engine 3. If they wrote any ActionScript for their port, it was very little, perhaps a loader or something to deal with assets, the rest was just C++.inighthawki - Thursday, October 6, 2011 - link
I didn't really necessarily mean they had to be rewritten by hand, just that the code had to be converted to a format that flash can handle. It still means that it's the game that supports flash, not flash that supports the game.CityZen - Wednesday, October 5, 2011 - link
Errrr ... any chance of HTML5 supporting the Unreal Engine 3?Just when we were about to get rid of Flash for good, they come up with this
inighthawki - Wednesday, October 5, 2011 - link
Screw html5. Working with html and javascript is a nightmare vs a normal computing language (actionscript). Granted actionscript is pretty terrible in comparison to many other languages like C/C++, C#, java, it is WAY better than trying to use javascript.Visual - Thursday, October 6, 2011 - link
LOL, they are exactly the same language.Murst - Thursday, October 6, 2011 - link
No, they're not. ActionScript is a superset of JavaScript.inighthawki - Thursday, October 6, 2011 - link
It's not even close. Some of the syntax may have been heavily borrowed by javascript and java, but AS3 is a very VERY different language than javascript.deV14nt - Thursday, October 13, 2011 - link
Both ActionScript and Javascript are dialects of EMCAScript, the standard upon which they are all based...B3an - Wednesday, October 5, 2011 - link
HTML5 is a HIGHLY overrated joke.It does not remotely compare to Flash. You wont ever see anything like this with HTML. It simply cant do many things that Flash can, on top of that it's amazingly inefficient in comparison. You'd have to use javascript and as pointed out above it's a very poor language. Then you'd likely have to use WebGL for rendering, and thats very hit and miss depending on browser. Long story short trying to get anything as complex as UE3 running in HTML5 would be a nightmare and it would never run anywhere near as good as Flash.
Spivonious - Thursday, October 6, 2011 - link
Once 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.inighthawki - Thursday, October 6, 2011 - link
Javascript is incredibly slow, weakly typed, and has a great fear of security holes. It is not very well suited for any kind of resource management, and it will likely never support anything more than webgl, which will likely never become that popular due to the sheer difficulty required in making things work. So yes, its GREAT for general purpose scripting, but as a programming language to build large features, it is horrible. It is a scripting language in every sense of the word, and not very viable for large projects or applications.Penti - Monday, October 10, 2011 - link
Ecmascript 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:
1) Epic Games would have to rewrite the Unreal Engine 3, which would be hugely intensive task. Note Adobe has a tool that converts C++ code into ActionScript byte code called Alchemy. I don't know of any such tool for JavaScript.
2) While you can decompile a Flash file (SWF) there are a number of methods of hiding the code and making it difficult to get at the source. However, for a JavaScript library, anyone could grab the source code and use it in their project avoiding Epic Games' licensing and costs.
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 - link
Sure 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.You have Emscripten LLVM to Javascript compiler as one early project and route. And others. But that's an interesting platform to build on, competent too.
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.
Penti - Wednesday, October 12, 2011 - link
It is, but Flash is too. You don't see major web sites created in Flash for a good reason. It's not some magical superior media platform to begin with. It's architecture has hindered development in the video streaming field. Content creation tools are content creation tools. You can use the same animation tool and export for HTML5 if you like. Games will be developed in game engine tools regardless if you target mobile devices, flash or something like NaCl. Safari, IE9, mobile browsers, Chrome with Microsofts extension all supports streaming a unprotected MP4 just fine. Flash player content protection mechanism can be bypassed just fine for that matter and holds no real value. Tools are pretty much separate from target. There simply isn't something like a Flash API or a JS API you work directly against when writing apps at high-level framework and tools, it's really just packed differently and needs different third party libraries and tools to work. Not that it doesn't have merit but the things people talk about isn't coded at the low-level directly on top of the platform by web developers. Stage3D is just a low-level API in of it self. No more capable then WebGL. Stage3D just means a new shading language.However neither WebGL or Flash 11 means users have drivers to utilize the 3D features. (Or run them accelerated). It's not as simple as it will reach every user out there. You simply wont be doing these kind of things without middleware and content creation tools either way. And there really so no fight to be had, the future obviously isn't single platform or single target. None of them are magical.
ph0masta - Wednesday, October 5, 2011 - link
I'd prefer to play demos on OnLive. Then I don't have to download anything.phatboye - Wednesday, October 5, 2011 - link
Can someone please tell me why would anyone want to play a UE3 based FPS game in a web browser environment as opposed to playing a version that was compiled specifically for the OS that the game is running on? I can understand using flash to make relatively simple games like angry birds, but if you are using UE3 chances are that is not the type of game the developer is creating.Aikouka - Wednesday, October 5, 2011 - link
I don't know about an end-user, but from a developer's standpoint... as long as the operating system supports a full implementation of Flash 11, it will run the game."One 'executable' to rule them all."
Lifted - Wednesday, October 5, 2011 - link
I don't think the point was to play a 2GB modern FPS game, but perhaps a slimmed down, quick to produce (think iPad game) for the PC. I doubt demos will be out on this, but smaller full games with awesome graphics.Spivonious - Thursday, October 6, 2011 - link
The Unreal Engine is used by countless games, not just bleeding-edge shooters. As long as the game size can be kept reasonable (<10MB), then I can see this taking off.What I'd love to see is more browsers support running native C/C++ code. Then we really will see gaming in the browser take off.
docbones - Thursday, October 6, 2011 - link
Got no idea why companies want to add more instability by running their games in a browser.Tried the BF 3 demo the other day and after about 5 minutes uninstalled it. I dont want a game in a browser, I want a game thats full screen and I can adjust the resolution on it.
bupkus - Thursday, October 6, 2011 - link
Does this mean that games will now port to linux thru flash for linux?Of course GPUs still need drivers for linux.
sdffs - Sunday, October 9, 2011 - link
( MAX TN =) )
∩_∩
http://www.okeytn.com/
Nike TN Pas Cher Femme,sac coach,Nike TN Pas Cher Femme,tn air max,sac a main vuitton pas cher,bottes timberland femme pas cher,nike requin 2010,channel,tn nike pas chere,Nike TN Pas Cher Femme,tn requin
Welcome to
http://www.okeytn.com/