All these webgl demos cause my late 2008 macbook to grind to an absolute halt in a way that no other program seems to manage. You can almost hear the thing whimpering. Even the stuff like the volume control buttons on the keyboard stopped responding, and they normally take priority over everything else (handled by the kernel perhaps?)
Late 2008 MacBook? You have an Intel GMA GPU, expect strange, inconsistent, or simply useless performance in 3D rendering. It's probable the browser makers have paid little attention to performance on such chips.
The Source engine is much more mature and much better optimized than what's in WebGL implementations right now. Valve and other game makers have strong incentive to make their games run as well as possible on a wide variety of hardware. The WebGL implementations just haven't had the same kind of investment in time and expertise.
Writing a game engine is quite different to writing a set of bindings (which is basically all WebGL is). There isn't much scope for optimization so I wouldn't hold out hope for WebGL apps running much faster in future browsers.
Hm, sorry, I was under the impression the WebGL implementations were being done rather differently than they apparently are. I hadn't thought the calls were getting passed through directly due to security concerns.
Chrome, at least, appears to be a straight binding with extensive validation... That... kinda makes my nervous.
I think your nervousness is well founded, and that's why Microsoft won't implement WebGL [1], but Chrome's developers seem to think they can make things secure [2].
I don't think nervousness about a particular implementation approach is a reason not to implement WebGL, just a reason not to do it in what I gather is Chrome's way.
On the other hand, Chrome's strategy might just be getting explained poorly. My nervousness comes partly because the way it's described sounds like a filtering strategy. If it's more like a whitelisting strategy, it could be considerably less scary, and more in line with what I was kind of expecting from browser vendors.
Works fine (though somewhat slow, maybe 15 fps) on Intel graphics under linux for me. I gotta say I'm getting to like this new era where even GPU drivers work better in linux.
I am having a similar problem with a current-gen Air in Safari 5.1 w/ WebGL enabled. I just get a half of the screen (by diagonal) of green dots, and some other stuff that I think is the X-Wing. (then I die)
Because this doesn't capture the mouse it's really hard when you have to go to the top of the screen (menu bar) or bottom (taskbar). Without full screen mouse capture. WebGL will be nothing more than a toy when it comes to any kind of serious game.
I can't play it. I've played too many FPS and Flight Simulators in my time. The controls need to be inverted so i can fly it like a real plane. Too bad.
I realize that this is just a small tech demo, but even still -- GL is only part of the equation. The kind of platform optimizations that are eeked out in the game industry are substantial and extend well beyond just the GPU.
The interest in web (flash) games was largely driven by the difficulty of distributing casual native games -- and that's quickly becoming a solved problem.
I wouldn't say it's "amazing", but it's definitely "upvoteable" for two reasons:
1. I don't have to install it. This means I can satisfy my desire for instant gratification and quickly go back and upvote it.
2. I support open standards. I'll upvote it just for the fact that it's implemented in WebGL and not some proprietary bullshit, and I'll continue to do this until all the proprietary bullshit is long dead and gone.
The fanaticism surrounding your second point is very popular on the internet and is quite interesting to think about. What exactly is the problem? I don't have a hard answer, but let's objectively compare the advantages against a standard, closed-source mid 90's commercial PC game.
Longevity: x86 is in no danger of disappearing, and even if it was, popular open-source x86 emulators and virtual machines exist, with better performance and compatibility than a lot of WebGL implementations.
Proprietary platform: x86 has a very long history and is approximately perfectly documented. On the other hand, every browser implements WebGL slightly differently.
Can't see the source: Javascript can be minified and obfuscated to the point of incoherence. On the x86 side, i feel that this would be better addressed by improving assembly education: Everything is open source if you have a disassembler.
Software Freedoms: It's inherently more free, in the RMS sense, to have the content locally on your own computer than it is to stream it from somewhere else.
I know it's churlish of me, but the game being emulated is "star wars" not "x-wing".
Pretty impressive, though. Now, if Adobe could produce a webgl to flash 11 converter, it might be possible to actually do something like this commercially.
Fullscreen doesn't help when you have multiple monitors, hot corners, and windowshade functionalities. The lack of mouse acceleration adjustment is also a problem on large screens.
Your 2010 MBA has an nvidia 320M chip. Pedro's 2011-era 13" MacBook Pro (there is no 2011 MacBook) has an Intel chip. The 320M isn't a particularly great GPU, but I expect much better performance and compatibility out of it than the Intel.
Relying on absolute cursor position out to the very edges/corners of the window is a bad idea, it's too easy to go outside and lose control while trying to get to the extreme positions necessary.
It works much better in full screen mode (F11 for Firefox), but even then, you can still end up getting confused by mouse events outside the game window. My lower right corner of the screen causes my machine to sleep, and in full screen, if you move the mouse to the very top, the chrome will windowshade down.
Totally agree. This felt like a game that's really more suited to be played fullscreen, but is stuck in a browser. If you're going to live in the browser you also have to live within it's constraints, ie, don't make me quick-twitch to the corner.
Keyboard control for something like this is way too slow. I can't react in time, especially with the field of view partially obstructed by the fighter.
If, on the other hand, the intent is to prove that I suck at video games, then it's a resounding success.