Unreal Engine 3 compiled to asm.js

Subject: Editorial, Mobile | May 7, 2013 - 12:07 AM |
Tagged: unreal engine, firefox, asm.js

Over the weekend we published a post which detailed Javascript advancements to position the web browser as a respectable replacement for native code. Asm.js allows for C-like languages to be compiled into easily optimized script executed at near native performance on asm.js-aware browsers, but are still functional as plain Javascript otherwise. If you wish to see a presentation about asm.js and compiling native code into web code, check out an online slideshow from Alon Zakai of Mozilla.

If, on the other hand, you wish to see an example of a large application compiled for the browser: would Unreal Engine 3 suffice?

UnrealHTML5.jpg

Clearly a computer hardware website would take the effort required to run a few benchmarks, and we do not disappoint. Epic Citadel was run in its benchmark mode in Firefox 20.0.1, Firefox 22.0a2, and Google Chrome; true, it was not run for long on Chrome before the tab crashed, but you cannot blame me for trying.

Each benchmark was run at full-screen 1080p "High Performance" settings on a PC with a Core i7 3770, a GeForce GTX 670, and more available RAM than the browser could possibly even allocate. The usual Firefox framerate limit was removed; they were the only tab open on the same fresh profile; the setting layout.frame_rate.precise was tested in both positions because I cannot keep up what the state of requestAnimationFrame callback delay is; and each scenario was performed twice and averaged.

Firefox 20.0.1

  • layout.frame_rate.precise true: 54.7 FPS
  • layout.frame_rate.precise false: 53.2 FPS

Firefox 22.0a2 (asm.js)

  • layout.frame_rate.precise true: 147.05 FPS
  • layout.frame_rate.precise false: 144.8 FPS

Google Chrome 26.0.1410.64

  • Crashy-crashy

For Unreal Engine 3 compiled into Javascript we notice an almost 3-fold improvement in average framerate with asm.js and the few other tweaks to rendering, Javascript, and WebGL performance between Firefox 20 and 22. I would say that is pretty enticing for developers who are considering compiling into web standards.

It is also very enticing for Epic as well. A little over a month ago, Mark Rein and Tim Sweeney of Epic were interviewed by Gamasutra about HTML5 support for Unreal Engine. Due in part to the removal of UnrealScript in favor of game code being scripted in C++, Unreal Engine 4 will support HTML5. They are working with Mozilla to make the browser a reasonable competitor to consoles; write once, run on Mac, Windows, Linux, or anywhere compatible browsers can be found. Those familiar with my past editorials know this excites me greatly.

So what do our readers think? Comment away!

Cloth simulations in Javascript, optimized for asm.js

Subject: General Tech, Mobile | May 4, 2013 - 06:47 PM |
Tagged: mozilla, javascript, firefox, asm.js

Web browsers are getting really good at being general-purpose application platforms.

You can write most applications in web standards if you are willing to give up some level of performance for the gained ubiquity. HTML5, Javascript, and CSS are very full featured; WebGL and WebCL extend functionality by backing apps with surprising GPU horsepower; WebAPIs such as gamepad, telephony, and accelerometer support also keep advanced hardware-specific features open to web developers.

asmjsdrool.png

I can see the web developers drooling already.

But even though performance lags behind reasonable native environments, the divide is rapidly shrinking. Many applications have reached or exceeded the saturation of useful performance at the same time as browser developers narrow the gap between native performance and themselves.

Javascript is often, simply, good enough.

Mozilla has recently added support for the draft asm.js in their Aurora prerelease channel for Firefox. The specification is designed to permit a subset of Javascript to be flagged for optimization in compatible browsers but otherwise execute as normal everywhere else. It is also possible to compile more native code into Javascript if you can afford the ever-decreasing performance hit. Early implementations of asm.js execute code compiled from C within half of native performance.

asmjs.png

Because... pants.

According to David Herman of Mozilla, one of the lead authors of the ASM.js draft, the specification also allows for multithreading through web workers. Applications can take advantage of multiple hardware threads in this way, and potentially other methods as they continue development. I would expect this is especially relevant for mobile devices which tend to have relatively many cores considering their single threaded performance.

James Long of Mozilla compiled a cloth simulation into this Javascript subset. It will run in multiple browsers but will perform better in Aurora both in cloth precision and, as I have found, responsivity.

Check it out, imagine what you could be doing in your web browser in the near future.

Source: James Long

Happy 0th Birthday Firefox OS

Subject: Editorial, General Tech, Systems, Mobile, Shows and Expos | February 26, 2013 - 04:19 AM |
Tagged: Firefox OS, mozilla, firefox, MWC, MWC 13

Mobile World Congress is going on at Barcelona and this year sees the official entry of a new contender: Firefox OS.

Mozilla held their keynote speech the day before the official start to the trade show. If there is anything to be learned from CES, it would be that there is an arms race to announce your product before everyone else steals media attention while still being considered a part of the trade show. By the time the trade show starts, most of the big players have already said all that they need to say.

firefoxos.jpg

If you have an hour to spare, you should check it out for yourself. The whole session was broadcast and recorded on Air Mozilla.

The whole concept of Firefox OS as I understand it is to open up web standards such that it is possible to create a completely functional mobile operating system from it. Specific platforms do not matter, the content will all conform to a platform of standards which anyone would be able to adopt.

I grin for a different reason: should some content exist in the future that is intrinsically valuable to society, its reliance on an open-based platform will allow future platforms to carry it.

Not a lot of people realize that iOS and Windows RT disallow alternative web browsers. Sure, Google Chrome the app exists for iOS, but it is really a re-skinned Safari. Any web browser in the Windows Store will use Trident as its rendering engine by mandate of their certification rules. This allows the platform developer to be choosey with whichever standards they wish to support. Microsoft has been very vocally against any web standard backed by Khronos. You cannot install another browser if you run across a web application requiring one of those packages.

When you have alternatives, such as Firefox OS, developers are promoted to try new things. The alternative platforms promote standards which generate these new applications and push the leaders to implement those standards too.

And so we creep ever-closer to total content separation from platform.

Source: Mozilla

Mozilla Rolls Out Firefox 19 Web Browser With Built-In PDF Viewer

Subject: General Tech | February 22, 2013 - 05:11 AM |
Tagged: web browser, pdf viewer, mozilla, firefox

Mozilla recently rolled out Firefox 19 to its stable browser channel, bringing several new features and bug fixes to the masses. The most prominent new feature is a new built-in PDF reader that is now enabled by default. Using the PDF.js javascript libraries, the reader converts PDF files into HTML5 web pages. It is nice to see Mozilla incorporating the reader in the browser by default, eliminating the need for users to use Adobe Reader or other browser plug-ins (like this one we covered previously).

Firefox 19 PDF Viewer.jpg

 

Additionally, Mozilla has fixed several bugs and improved performance. The browser will now start-up more quickly than previous versions, and a WebGL drawing operation error has been corrected, for example. Further, Firefox 19 now recognizes more CSS features including @page and support for fixed-width text transformations. A new debugger has also been added to Firefox 19, which should help add-on developers test their code. Also in interesting news, mobile users running Firefox for Android will also be pleased to know that Mozilla has relaxed the CPU clockspeed requirement to a mere 600 MHz–allowing the mobile browser to run on even more Android devices.

The new version is available for download from the Mozilla website.

Source: Mozilla

Javascript + Adobe; you got your exploit in my vulnerability ...

Subject: General Tech | February 21, 2013 - 12:27 PM |
Tagged: Adobe, firefox, pdf, javascript, fud

What could possibly go wrong by combining two of malwares most favourite security holes into one?  With FoxIt recently sprouting leaks and Adobe's continual duct taping of it's Reader, reading PDFs online is a great way to catch something nasty. Then again, there is always malformed Javascript commands and links which are another very popular way to give your PC a cybernetically transmitted disease.  The new Firefox combines the two in their latest version, 19.0, which is currently in beta testing and it uses an open sourced Javascript add on to open PDFs online, which will likely improve the responsiveness and loading time of PDF links.  The real question won't be answered until use of this new add on becomes commonplace and we find out if the two combine into some a gaping new hole into your PC or if somehow mismatched vulnerabilities will combine to create an actual secure way to read PDFs.  Then again, maybe it will not introduce anything new at all.  More at The Register or grab the latest Firefox and try it yourself.

RememberThatCommercial.jpg

"Mozilla's Firefox web browser now includes a built-in PDF viewer - allowing users to bin plugins from Adobe and other developers.

The move to run third-party PDF file readers out of town comes after security holes were discovered in closed-source add-ons from FoxIt and Adobe. The new built-in document viewer is open source, just like Firefox, and is written in JavaScript."

Here is some more Tech News from around the web:

Tech Talk

Source: The Register

Mozilla Reverses Decision to Axe 64-Bit FireFox Builds, But Support Will Be Left to the Community

Subject: General Tech | December 26, 2012 - 04:34 PM |
Tagged: mozilla, firefox, browser, Internet, 64-bit

A month ago Mozilla announced that it would no longer release 64-bit versions of its popular Firefox web browser due to a lack of resources. While the stable versions for Windows were 32-bit, nightly builds were available to enthusiasts that were 64-bit and could take advantage of more than 4GB of memory.

Mozilla developer Benjamin Smedberg stated that there was significant negative feedback from the community over the decision to axe 64-bit nightlies. While Mozilla has reaffirmed that they do not have the resources to support 64-bit builds, the developers are proposing a compromise that they hope will assuage users. In short, the Release Engineering team will continue to build 64-bit versions of the Firefox browser, but Mozilla will consider it a teir 3 build and the support is left up to the community.

Firefox_logo.jpg

Currently, the plan regarding 64-bit versions of Firefox involves a forced migration of existing 64-bit users to 32-bit versions via the automatic browser updates. Then, after the migration date, users that want the 64-bit version will need to go and download it again. Once installed, users will be informed that it is not officially supported software and they are to use it at their own risk. Click-to-play plugins will be enabled in the 64-bit builds while the crash reporter will be disabled. Win64 tests and on-checkin builds of the browser will be discontinued.

Interestingly, all browser testing by Mozilla will be done on the 64-bit edition of Windows 8. Yet they are only testing and supporting 32-bit versions of Firefox. The current situation is less than ideal as the x64 Firefox browsers will not be supported by Mozilla, but at least the software will still be available for those that need it. For now, Waterfox is an option for those that need to install a 64-bit browser based on Firefox.

Does Mozilla’s decision to stop supporting the 64-bit Firefox browser affect you? What do you think of the offered compromise?

Source: Mozilla

Mozilla ... you do know 64-bit OSes aren't going to disappear soon, right?

Subject: General Tech | November 22, 2012 - 01:03 PM |
Tagged: mozilla, firefox, dumb, 64-bit

Once upon a time was a little company called Mozilla who had a browser that knew some tricks no other browser did.  After a while the Mozilla foundation decided to split up several projects and the Firefox browser was born, again capable of things that no other browser was doing at the time.  The other browsers were quick to pick up on these tricks and to emulate them, but Firefox held onto a respectable share of overall usage which slowly eroded as other browsers came onto the scene to steal away some of that share.  Apparently this depressed Firefox as it decided to start on a steady diet of add-ons and stuffing extras in below the belt which eventually caused such bloating as to make those who cared about Firefox suggest it might want to think about slimming down a bit or at least wear something a little larger, maybe a size 64. 

Instead, according to various sources such as DailyTech, Firefox has decided to dump all development of a 64-bit version of its browser.  IE10 supports 64-bit, Opera supports 64-bit and Chrome does on Linux and is working on a Windows version for the near future, leaving Firefox in the company of Lynx.  While the news stories are specific to the Firefox browser, it leaves one suspicious about the Firefox OS which is being developed for mobile devices; just what features are going to be abandoned as too hard to continue developing for.

imageslife-is-hard2.jpg

"Fans of the non-profit Mozilla Foundation have waited... and waited... and waited more still, for Mozilla's popular Firefox browser to add 64-bit support. With pickup of 64-bit SKUs of Microsoft Corp.'s (MSFT) Windows operating system rapidly accelerating, it certainly seemed a 64-bit browser would be just around the corner.

Instead Mozilla has made the curious decision to pull the plug on the long-delayed project, while offering only small clues as to why the decision was made."

Here is some more Tech News from around the web:

Tech Talk

Source: DailyTech

Netflix (Finally) Playable On Linux Using Patched Version of WINE

Subject: General Tech | November 17, 2012 - 05:53 AM |
Tagged: wine, windows, ubuntu, silverlight, Netflix, linux, firefox

One of the major hurdles preventing me from switching to Linux completely (despite my love for Mint) has been Netflix support. While there is a Silverlight-equivalent called Moonlight for the Linux operating system, it does not support the necessary DRM aspects to facilitate Netflix Instant Streaming. Aside from installing VirtualBox and booting an instance of Windows (which basically defeats the purpose of switching), Linux users have not been able to stream Netflix shows.

Thanks to a Linux developer by the name of Erich Hoover, there is a ray of hope for Linux users that want to take advantage of the streaming side of their Netflix subscriptions. Using a patched version of WINE (Wine Is Not An Emulator), Firefox, and an older version of Microsoft Silverlight, he was able to get Netflix streaming to work without breaking the DRM. That’s good news as it means that even though it is not officially supported, Netflix is not likely to actively break or fight it.

netflixonlinux.jpg

Netflix Instant Streaming running on Ubuntu 12.10 (32-bit).

Currently, it has been tested on the 32-bit version of Ubuntu 12.10, but other distros are likely to work as well. Users will need to compile WINE from source, apply five patches, and then install Firefox 14.0.1 and Silverlight 4. Right now, there is no GUI or pre-compiled version, and at least the first few steps require the use of the terminal. Thankfully, I Heart Ubuntu has put together a step-by-step guide outlining exactly what you need to type into the terminal to get Netflix streaming up and running. The site notes that the WINE patching process could take a good chunk of time if you are on an older computer. Further, Silverlight 5 does not work, so using the older version is necessary.

This is great news for the Linux community, and along with the Steam for Linux beta things are definitely looking up and moving in a positive direction for the open source operating system. Obviously, this is far from native support, but it is a huge improvement over previous workarounds. A PPA is also reportedly in the works to make the installation of the patched WINE version even easier for those not comfortable with the terminal. Until then, check out the I Heart Ubuntu guide for the full setup details.

The developer asks that you donate to the WINE Development Fund if you find his Netflix support patches useful.

Image credit: iheartubuntu

Firefox OS Interface as of September 6, 2012

Subject: General Tech, Mobile | September 10, 2012 - 09:02 PM |
Tagged: firefox, Firefox OS

Mozilla has released a demonstration of their mobile operating system, Firefox OS. As much as I like Mozilla and their influence on the PC industry I cannot see much reason for this operating system to exist as it stands right now.

We have reported earlier in the year on Mozilla’s push into the mobile and app store market.

Just last week as of the time of this writing we have been given a video walkthrough of current builds for Firefox OS. This is obviously a very early build of the operating system and we have no idea what the developers have planned for the platform in the future. The only position I can speak from is what I can see right now – and that is what I will do.

There’s also the whole issue of tablets…

The operating system as it currently stands looks like it could very well be a custom skin of Android. It is clear that Mozilla has put a substantial amount of work into the backend just because of how complex a mobile operating system fundamentally is. The interface could be little more than placeholder used to develop the fundamentals.

If not then it is somewhat disappointing to me. Mozilla has always had innovative hooks such as tabs or extensions to disrupt incumbent products. Apart from its legally open nature I do not really see anything yet that would differentiate the platform from its peers. Simply put, it looks like Android – and not even the most recent Android.

Hopefully we will begin to see some of the disruptive force Mozilla is known for as this operating system begins to mature. There just has to be a hook somewhere for it to gain any ground especially when it is this late to the game.

Source: Youtube

Firefox 12 will be able to bypass UAC and possibly corporate security settings

Subject: General Tech | April 24, 2012 - 01:01 PM |
Tagged: UAC, security, firefox

One of the causes of the adoption of Google's Chrome browser in the workplace is that for the most part, since it installs under your user directory it can bypass the limited permissions on most business computers, letting the user install something without consulting IT.  This is a minor security concern as Chrome runs with limited permissions and is certainly not more inherently vulnerable than the old corporate standby, IE6.

According to The Inquirer Firefox will be starting to do something similar but with larger repercussions.  FireFox 12 will be whitelisted on UAC, allowing system level access to the program.  While this does mean that if they are successful users will be running up to date software and not require IT resources to upgrade FireFox every month or so, it also introduces a powerful attack vector for infections.  A silent FireFox update might not be from Mozilla and could instead be from malware online, creating a system vulnerability that the user is completely unaware of until obvious symptoms start to show, by which time it could be too late to stop the spread of an infection to the network or to clients machines.  The update is due out today, so keep a close eye on your FireFox installation for now.

 

images.jpg

"SOFTWARE DEVELOPER Mozilla will bypass Windows' user account control (UAC) to implement silent updating in its Firefox 12 web browser.

Mozilla's Firefox 12 is expected to be released today, and the outfit claims it will bypass Windows UAC in order to enable silent updating. Since Mozilla put Firefox on its rapid release schedule, it has put out new versions of the web browser every six weeks, leading some users to complain about the number of releases."

Here is some more Tech News from around the web:

Tech Talk

 

Source: The Inquirer