Mozilla Ports Full FPS Engine to WebGL; Playable Demo
Here's a full game engine written in C++ ported over to HTML5, WebGL.
Firefox developer Mozilla updated its blog with news of BananaBread, a first-person shooter that runs within a browser without the need to install plugins. To make the demo happen, the team said it ported a complete C++ game engine -- the open-source Cube 2: Sauerbraten -- to JavaScript and WebGL using Emscripten. The project required very few code modifications to the original game, the team said, which demonstrates that porting games to the Web does not have to be difficult.
"The project has several goals," reads the BananaBread blog. "First, to serve as a testcase for running a demanding 3D game in browsers: Having a working testcase lets us try out new browser features and to profile performance in order to make browsers faster. Another goal is to prove that games of this nature can run in JavaScript and WebGL, which many people are skeptical about. Finally, all the code in this project is open (and practically all the art assets), so others can learn from this effort and use this code to create their own browser games."
Here are all the technologies that Mozilla's Firefox 15 is now using to bring top-notch games to browsers:
* Game focused performance improvements to JavaScript, many inspired by games and demos that we saw on the Web or that developers sent to us for testing
* Wide range of WebGL performance improvements
* High precision timing
* Compressed texture support on desktop
* Smoother JavaScript execution on large code bases
* Hardware acceleration of 2D canvas on desktop
* FullScreen API
* PointerLock API (special thanks to David Humphrey and students at Seneca College)
* OrientationLock
"One of the main goals of the Mozilla Community working on games is to not only drive game development on Firefox but across all browsers," Mozilla said. "Any browser that has implemented the necessary modern Web standards used by the BananaBread demo can run it. These efforts help us stay in touch with how HTML5 is coming together and see opportunities where we can make developers’ lives easier. Hearing directly from the HTML5 game developer community is a key part of how we learn what needs to be done."
Mozilla's new BananaBread demo offers three playable maps against bots: Arena, Two Towers and Lava Chamber (Quake fans, are we?). If the demo isn't loading even though Firefox 15 has WebGL enabled, then the browser might have your GPU blacklisted anyway. Mozilla will blacklist a specific GPU based on its driver version:
Nvidia: requires driver numbered 8.17.12.5721 or greater
AMD: requires driver numbered 8.741.0.0 or greater
Intel: requires driver number 6.14.11 on XP, 7.15.10 on Vista, and 8.15.10 on Windows 7
Stay On the Cutting Edge: Get the Tom's Hardware Newsletter
Get Tom's Hardware's best news and in-depth reviews, straight to your inbox.
OF course, this becomes a problem when hardware vendors and OEMS stop producing drivers for legacy products (older cards, laptops, etc.). There's a workaround/blacklist bypass in Firefox, but proceed at your own risk -- we don't take responsibility for any flaming GPUs. Simply click on the address bar in Firefox and type about:config. After that , make the following three changes:
* To enable WebGL, set webgl.force-enabled to true
* To enable Layers Acceleration, set layers.acceleration.force-enabled to true*
To enable Direct2D in Windows Vista/7, set gfx.direct2d.force-enabled to true
If the demo performs like you're moving against a nasty rip current (below 20fps), then there's probably a good reason why Mozilla blacklisted your GPU.
AMD announces unified UDNA GPU architecture — bringing RDNA and CDNA together to take on Nvidia's CUDA ecosystem
MSI's new 1500R ultrawide Modern MD342CQP series features 120 Hz VA 1440p panel, 98W USB Type-C PD
Asus Dual GeForce RTX 4070 GDDR6 hits U.S. e-tailers but is more expensive than some GDDR6X models
-
amk09 Was waiting for something like this. It runs good, I was playing it on an i3-2120 with HD2000 graphics. The developers did it well and I like where this could go.Reply -
mayankleoboy1 Nvidia: requires driver numbered 8.17.12.5721 or greater
AMD: requires driver numbered 8.741.0.0 or greater
Intel: requires driver number 6.14.11 on XP, 7.15.10 on Vista, and 8.15.10 on Windows 7
nice copy paste.
What driver package versions do these numbers match to ? -
SirTrollsALot Donate to Mozilla or maybe they should create something on Kickstarter just for kicks to see how much they raise... I'd bet multimillions! Cause this would be cross platforms compatible!Reply -
nukemaster greghomenow.......this is gonna be a browser based game worth playing.....NvidiaReply
257.21
AMD
10.6
https://wiki.mozilla.org/Blocklisting/Blocked_Graphics_Drivers
Interesting little game. -
sojrner running core i7 laptop, Nv quadro FX 880M w/ driver version 8.16.11.8974Reply
I was not blacklisted, everything ran fine. -
sojrner mayankleoboy1nice copy paste. What driver package versions do these numbers match to ?Reply
In windows, run dxdiag to get your actual driver version number, not the main package number. -
mitch074 Then I guess we can put it down once and for all: in all, yes, if ported it could run Crysis.Reply
===>