Slashdot Mirror


Team Fortress 2 Running In a Web Browser Using WebGL

An anonymous reader writes "Unreal Engine now runs in Flash and Crytek is considering porting CryEngine to Flash, but perhaps the Source Engine could go a different route. A software developer who works for Motorola Mobility has managed to get the engine and a level from Team Fortress 2 running in a browser using WebGL. There are still a few features and effects missing, but he claims it achieves a solid 60fps and has a video to prove it. Hopefully this gives Valve ideas; it'd be cool if older Source games became playable in your favorite browser, or even directly in Steam."

63 of 87 comments (clear)

  1. How's the audio? LOL by Assmasher · · Score: 1

    That's the one thing major thing missing from HTML5 + WebGL - Audio control. Add sample level audio control and we're golden.

    --
    Loading...
  2. Re:How's the audio? LOL by tixxit · · Score: 4, Informative

    I'm also pretty sure that the guy just got a TF2 level to render and didn't port Valve's Source engine to JS. So its also missing the entire Source engine.

  3. Re:How's the audio? LOL by tixxit · · Score: 1

    Should add that I think its cool he did this, but the summary is misleading (redundant, I know).

  4. Why a web browser? by bonch · · Score: 1

    Why would I want to play in a web browser instead of natively?

    1. Re:Why a web browser? by Lanteran · · Score: 2

      So you can play in linux, BSD, et al without wine?

      --
      "People don't want to learn linux" hasn't been a valid excuse since '03.
    2. Re:Why a web browser? by geekoid · · Score: 1

      So one could play on the iPad.

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    3. Re:Why a web browser? by uncanny · · Score: 1

      Some of us work at places with overbearing IT departments that won't let me install things on our computers, however it does have flash

    4. Re:Why a web browser? by Jonner · · Score: 1

      Why would I want to play in a web browser instead of natively?

      You'd want to do this for the same reason that you'd want to run any application in a web browser instead of natively. It's far more convenient to deploy and update and far easier to support multiple platforms.

    5. Re:Why a web browser? by moozey · · Score: 1

      Maybe you're running Chrome OS...

    6. Re:Why a web browser? by justforgetme · · Score: 1

      Well, that idea is great for indie devs aswell. In fact downloads are hellishly cheap (as distribution goes). this is a very effective strategy to get revenue of a game while still in development. Then, when development is finished, you can give users a full download. Users will play the game off the HDD through the browser (still having the option to natively push updates DLC etc) for a one off fee or free if the user has hit some quota.

      Also, browser games should allow to take your game with you everywhere (mobile, hand held, living room). So they become more accessible in everyone's fragmented computer landscape.

      This is good, not bad

      --
      -- no sig today
    7. Re:Why a web browser? by ArsonSmith · · Score: 1

      So you can browse to and play games without worrying about driving to a store or downloading an entire game that you may get bored of in the first level and never see 90% of the content you just downloaded.

      --
      Paying taxes to buy civilization is like paying a hooker to buy love.
    8. Re:Why a web browser? by thetoadwarrior · · Score: 1

      It makes it less likely that you need to be tied to a shitty windows machine to play games.

    9. Re:Why a web browser? by DaVince21 · · Score: 1

      RTFA. There is no playing involved.

      --
      I am not devoid of humor.
  5. WHOA by GameboyRMH · · Score: 1

    CryEngine on Flash!? I think we have a new benchmark, everyone!

    --
    "When information is power, privacy is freedom" - Jah-Wren Ryel
  6. Really? by vawarayer · · Score: 1

    In flash, really ? Flash is so much ressource hungry, no? Hope you Web gamers have gamer machines...

    1. Re:Really? by notKevinJohn · · Score: 1

      Really? Do you think there is a technology out there that would let games run on machines without hardware capable of running them? I suppose there are some cloud-based options that could work for that, but ultimately the processing has to get done somewhere.

  7. TF2's sappin' mah web browser! by Captain+Spam · · Score: 1

    Pix of hats or it didn't happen.

    --
    Demanding constant attention will only lead to attention.
  8. Re:How's the audio? LOL by Assmasher · · Score: 1

    What are you talking about? Are you suggesting generating and inserting HTML audio elements into the document to support the playback of a subset of samples? That's craziness. Why don't I just build the Sears Tower out of toothpicks for the next 1,000 years.

    I would love to see an HTML 5 (or any JavaScript driven code for that matter) that could submit samples to audio playback that didn't lag or skip and didn't require a plugin.

    I think HTML 5 is great, but missing that one thing to be a true 'killer platform.' Good audio control/synchronization (hell, I don't have to have sample level submission, but then let me know where in the playback it is...) would be amazing.

    --
    Loading...
  9. Re:or even directly in Steam ?????? by Telvin_3d · · Score: 2

    Steam includes an integrated webkit browser overlay that lets you check sites without exiting your game. I assume that it meant you could use this browser to play the game.

  10. Re:How's the audio? LOL by Assmasher · · Score: 1

    Yeah, I still "LOL" at the frothing at the mouth of every WebGL demo that comes out because there is no quality audio in HTML5/4/whatever.

    I have known about the Audio nodes API for almost two years (before it was published as the "Web Audio API.") I was hoping something like that would be part of HTML5, it isn't.

    Who cares if it works in Chrome? It needs to work in Firefox, Chrome, and IE.

    --
    Loading...
  11. Re:How's the audio? LOL by BenihanaX · · Score: 1

    I'd upvote you informative if I could.

    I was going to comment that it doesn't appear to be running 60 FPS, but he claims it does when it is running alone (presumably without the video recording software).

  12. Cool but by degeneratemonkey · · Score: 1

    I've done some stuff with WebGL and there is some great potential here. As was mentioned above, sound is one issue that needs some serious attention in the browser environment. The other is input.

    1. Re:Cool but by I(rispee_I(reme · · Score: 1

      Hear, hear. I am waiting for a decent way to get gamepad input on a browser, so I can start making games worth playing in a browser.

    2. Re:Cool but by Lennie · · Score: 1

      People are already doing that, by running piping the results from kinect to nodejs and have the webinterface use nodejs as it's server:

      http://www.youtube.com/watch?v=UMBWYBH3TKg

      This has no demo, but read the text and see the result:
      http://kinect.dashhacks.com/kinect-news/2011/07/12/kinect-web-animation-using-html5-and-animatable

      http://typefolly.com/css-tricks/

      An other:
      http://www.youtube.com/watch?feature=player_embedded&v=p36xoBZVQ8c

      --
      New things are always on the horizon
  13. Incorrect by Narishma · · Score: 2

    The guy didn't port the TF2 engine to WebGL since he doesn't have the source code. What he did is make a map loader that can partially load a TF2 level and display it with WebGL, but you can't actually play in it.

    --
    Mada mada dane.
  14. Title change, please? by BrandonJones · · Score: 5, Informative

    As the developer of the demo in question, can I request a change in the article title? I did NOT port the Source Engine to a browser, not even close. I've simply loaded some of the visual resources and demonstrated that they can be displayed at game-appropriate speeds. It's a long way to go from here to "Team Fortress In a Browser".

    1. Re:Title change, please? by Anonymous Coward · · Score: 1

      No way. It wouldn't be /. if the articles weren't inaccurate and sensationalist.

    2. Re:Title change, please? by Anonymous Coward · · Score: 1

      ...and it wouldn't be html5 if it wasn't a non-working example of something that might, one day, be useful, if you're prepared to use a different browser for each web game that you choose to play.

    3. Re:Title change, please? by discord5 · · Score: 1

      I did NOT port the Source Engine to a browser, not even close.

      I expected as much, but thanks for setting the faulty slashdot record straight.

      FYI, I'm not too big a fan of the tendency to try and do as much as possible in the browser, but you've definitely earned your geek badge with this. Kudos sir, my hat's off to you.

  15. Re:or even directly in Steam ?????? by geekoid · · Score: 1

    That's great, but FYI valve could vanish tomorrow, and there games would still be playable. I hate to inject facts into your hate..no I don't.

    --
    The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
  16. Re:How's the audio? LOL by Baloroth · · Score: 1

    Ah, the famous quantum claim. "It was working fine before everyone else started looking at it!" Usually preceded by a "Hey guys, check this out!"

    --
    "None can love freedom heartily, but good men; the rest love not freedom, but license." --John Milton
  17. Re:or even directly in Steam ?????? by icebraining · · Score: 1

    Only those already installed and completely updated. If you bought a game (even a physical version) which needs Steam to install, it'll tell you to fuck off if it can't connect to the server.

    Backed up the game to a DVD due to lack of disk space and want to play it again? Ops. Bought a new rig and want to play your existing games there? Nope.

  18. Re:or even directly in Steam ?????? by afabbro · · Score: 1

    That's great, but FYI valve could vanish tomorrow, and there games would still be playable.

    Even after I get a new computer and can't contact their activation servers?

    --
    Advice: on VPS providers
  19. 60fps? by BradleyUffner · · Score: 1

    the video looked more like it was going around 19fps, not 60.

    1. Re:60fps? by greatica · · Score: 1

      the video looked more like it was going around 19fps, not 60.

      He also mentions that the video recorder on his machine is slowing it down, and it gets anywhere from 60 to 120 fps without it.

    2. Re:60fps? by Cant+use+a+slash+wtf · · Score: 1

      Ok, nevermind. I'm an idiot. I should've looked at the Youtube comments (that's probably the first and last time I'm every going to say that). Turns out it was just his recording program locking it at 20, rather than 60.

    3. Re:60fps? by BradleyUffner · · Score: 1

      He also mentions that the video recorder on his machine is slowing it down, and it gets anywhere from 60 to 120 fps without it.

      Except they claim the video is proof that it runs at 60fps when it is no such thing.

    4. Re:60fps? by sproketboy · · Score: 1

      WTFV. He says in it that the recorder was only doing 23 frames but if you run it yourself in a browser it's 60.

    5. Re:60fps? by BradleyUffner · · Score: 1

      WTFV. He says in it that the recorder was only doing 23 frames but if you run it yourself in a browser it's 60.

      Except the summary says that the video is PROOF of it running at 60fps. The video doesn't prove it if it doesn't show it.

  20. It's not April... by msobkow · · Score: 1

    Yeah, when I read that, my first thought was that I'm caught in a time warp and got sent back to April 1.

    The Cry engines are already pretty much the most resource-intensive things out there, though they do look great. But I can't imagine how or why anyone with a functioning brain cell would want to "port" such an engine to something so woefully underpowered and feature-limited as Flash.

    --
    I do not fail; I succeed at finding out what does not work.
    1. Re:It's not April... by msobkow · · Score: 1

      I just saw the Unreal engine demo using the new Flash 11 accelerated APIs. Guess it is possible.

      Still sounds crazy to me.

      --
      I do not fail; I succeed at finding out what does not work.
    2. Re:It's not April... by snemarch · · Score: 1

      GPU rendering is one thing, the other LARGE part of the engine that handles everything else still runs on the CPU. Just how efficient can Adobe make the FVM?

      --
      Coffee-driven development.
    3. Re:It's not April... by Feltope · · Score: 1

      Most of the problems (not all obviously) flash has are because of the lazy morons that are writing the flash games/apps etc. not the player. I have seen some shitty code in my day but some of the stuff I have seen in in actionscript would make you cry. It is to bad really. Actionscript is a solid language add on top of that HaXe and you have an even more robust language.

      The ability to rapidly develop insanely low quality code that works is why it is so attractive. That doesn't mean all AS code is crap though, there are some seriously good flash developers out there.

      --
      thanks, Feltope
    4. Re:It's not April... by xhrit · · Score: 1

      I have developed several projects in flash on both a professional and a personal level, and I must say the player has had some pretty serious flaws. About a two years back I was brought on to company to port a complex Java application to Flash.

      Project requirements included a realtime sub milisecond multidirectional video stream; if you think something along the lines of a control system for remote drones you will have an idea about the kind of mission critical application we are talking about. Which is a stupid thing to do, and I told them before they hired me that I did not think it was a good idea, but I took the job anyway.

      I got the project working easily but if the flash player was left open for long enough the video streams would eventually become unsynchronized. I did everything I could think of trying to trace the source of the drift and find a solution to the problem, including optimizing the Actionscript bytecode. But the best I could manage was 3 hours live before the streams desynched by more then 1 second. It turns out flash player leaks memory, and after exhausting everything I could think of I came to the conclusion that I just could not make it work. So I decided to find someone who could.

      I ended up in text chat with a key architect of the Flash Player, and had the opportunity to ask some questions about the fundamental design principals of flash. Basically I was told that flash player was not designed to do that sort of long running operation. It is optimized for typical usage patters, which was a high number of concurrent small short executions; it was designed to be used in an environment where you refresh the page every once in a while.

      It is great if the flaws with Flash Player were addressed, then the platform would become more viable to developers. But I have already decided that all of my personal projects going forward are to be based on open source technology.

  21. Glorified map loader. by flimflammer · · Score: 1

    So really what this guy did was take a level from Team Fortress 2 and render the basic geometry + some lightmapping.

    I'm not really sure what the big deal is. Based on what the title and summary suggested, I expected a hell of a lot more than a map loader. He did not get TF2 running in a browser, not anything from the Source Engine. All he did was load and render a TF2 map. If this sort of thing wasn't possible in WebGL to begin with there would be no point in WebGL at all, so the fact that he's gotten this much to work isn't surprising. It's not as if TF2 is really pushing the envelope in terms of graphical prowess. Its popularity doesn't have so much to do with graphics as it does with gameplay.

  22. Re:or even directly in Steam ?????? by somersault · · Score: 1

    You're right - I haven't had to deal with slow connections since I left home 10 years ago.

    What are you doing with the "constant change of machines"? Why don't you copy the cache between machines on a USB drive if you're having problems with slow connections? I think there's even built-in functionality to backup and restore caches from what I remember from like 5 years ago. *checks google* Yes, you can definitely do that. So any complaints about your network speed causing issues are just you being too fuckwitted to buy or borrow a flash drive and transfer your game cache, or even transfer via a switch or WiFi if you have both machines in the same building.

    I've actually been exclusively doing console gaming for the last 3 years or so. I haven't given any money to Valve outside of buying the Orange Box and Portal 2 for PS3. But it's not because I don't like Steam - it was just because I didn't want to use Windows any more, and there were too many issues with using the games I liked via WINE.

    --
    which is totally what she said
  23. Re:or even directly in Steam ?????? by icebraining · · Score: 1

    Nobody said you shouldn't use Steam, just that it depends on Valve's activation servers to work properly, and it does.

    As for cracks, one could say the same about having to type product keys. And they don't exist for every game.
    Besides, paying for games that depend on illegal stuff to work properly is just giving the wrong feedback to companies and hurting ourselves. I rather go without playing it than supporting such behavior.

    I doubt Steam is going down without plenty of warning any more than Amazon would just disappear overnight.

    Well, I guess it depends on the people. Considering I still play 10+ year old games regularly, the fact that they won't disappear "overnight" is rather irrelevant.

  24. Re:How's the audio? LOL by PwnzerDragoon · · Score: 1

    Agreed, though progress is being made. Both Mozilla and Google have submitted proposals to the W3C, and already have some support in their browsers. Firefox uses the Audio Data API, and Chrome the Web Audio API. Obviously it'll be a while before one gets standardized (given the W3's track record, could be a very long time) and support becomes universal across browsers, but it's a start.

  25. Re:How's the audio? LOL by PwnzerDragoon · · Score: 1

    Replying to myself; I see below you're already aware of these. From two years ago. And it's still at the proposal stage.

    It begs the question, what exactly is it the W3C does all day? Do they just spend all their time surfing the internet? And if so, wouldn't they want to approve this stuff faster so they'll have more ways to goof off?

  26. No. Not Flash. by Snospar · · Score: 1

    Please don't let them put anything else "in Flash". It isn't necessary (WebGL). It isn't secure (ever). It isn't needed (full stop).

    It's been hard enough to play video streams "through" flash on Linux, don't push the next gaming craze down the same toilet.

    --
    Moore's law is not a law. Theory, yes; Predictable trend, certainly; Law, no.
  27. Re:or even directly in Steam ?????? by somersault · · Score: 1

    Well, the only cracks I used to download were NoCD cracks. Steam meant that I no longer had to do that, so it was a bonus for me. I was just pointing out that if it did go down for good, tools would be made available - whether officially or unofficially - for playing your games offline*. I certainly don't think that the illegal route is positive in any way, and I also generally abhor the concept and basically the necessity** for DRM. But I wish that more companies would introduce Steam like DRM which actually provides many benefits, rather than DRM that only has all the negative sides.

    * assuming you had them cached of course - otherwise it's to the torrent trackers with you!

    ** "keeping honest people honest" type of thing. Maybe just "keeping stupid people honest". It's bizarre the number of people on YouTube who think that saying "I do not own this, I do not intend Copyright infringement" don't realise that it's still copyright infringement whether you say it is or not (though of course intent matters to an extent).

    --
    which is totally what she said
  28. Amiga did it by cheekyboy · · Score: 1

    If the Amiga can do it in 7mhz and in 1985-2000, then get with it dudes , get some elite old school coders to do it . And hurry up slow ass.

    --
    Liberty freedom are no1, not dicks in suits.
    1. Re:Amiga did it by justforgetme · · Score: 1

      AFAIK the amiga you are talking about is just interpreting MIDI signals.
      Very, very different thing.

      --
      -- no sig today
  29. Re:or even directly in Steam ?????? by Jorl17 · · Score: 1

    "Haters gonna hate".

    --
    Have you heard about SoylentNews?
  30. 60fps? by Cant+use+a+slash+wtf · · Score: 1

    That really didn't look like 60 fps to me. I don't know if it was just the way it was recorded, or the guy's mouse but that didn't really look like it was achieved 'a solid 60 fps'.

  31. Re:How's the audio? LOL by justforgetme · · Score: 1

    Well, screen grabbing software is processing and IO intensive, I can easily see a screen grabbing app bottleneck the (already highly utilized) CPU resulting in a 50-80% preformance loss. Don't forget that in order for webGL to offload data to the GPU, browser javascript has to do a lot of computation. So yes that claim is much more plausible than saying the same thing for a (flash) binary.

    --
    -- no sig today
  32. Re:How's the audio? LOL by justforgetme · · Score: 1

    The W3C has a lot of fronts to manage every time they progress some proposal. I have been following a handful of discussions (mostly on sockets and applications) and the amount of data and discussions that are monitored and moved around is very big. The W3C moves slow because the web can't break. So every new functionality or modified behavior has to be very well thought out.

    BTW: I don't know if it was the version (aurora 9), or that i was on fedora, but the last time I visited the mozilla sound experiments nothing worked.

    --
    -- no sig today
  33. Re:How's the audio? LOL by PwnzerDragoon · · Score: 1

    Oh, sure, I realize it's a very complex task they have, I was speaking mostly in jest. I know I'm not alone in my frustration of their slower-than-molasses processes, but while I sometimes think they move too slow, I know they're still far more qualified for the job than I am. As you say, you can't break the old stuff with updates, and the new stuff you want to make sure you get right the first time.

    As for Mozilla, I tried out some of their sound demos earlier today. They technically worked, but on my reasonably fast system I got slowdown, scratching, and lag. Meanwhile, the Chrome demos worked perfectly, even with a WebGL visualizer running on the page and 20 other tabs open. If this is the best Mozilla has to offer, I tend the think the Web Audio API is going to win this battle. That is, when the W3C eventually accepts it to the point other browsers begin implementing it, which if we're lucky will happen before HTML6 becomes the next big thing.

  34. Re:How's the audio? LOL by Lennie · · Score: 1

    You misunderstand the process and many do.

    Here is a rundown of what it looks like:
    Step 1: someone has an idea
    Step 2: a possible API is discussed on the w3c mailinglist
    Step 3: an API is drafted
    Step 4: 1 or 2 browsermakers implement it in their browser, do use a 'vendor' prefix
    Step 5: people look at how well it works, discuss it on the w3c mailinglist.
    Step 6: Webpage authors are encouraged to try it out (and use it in production) with the vendor prefix.
    Step 7: proposals for a standard are made
    Step 8: I think people vote on it
    Step 9: standards are approved and it is a standard. An actually "industry standard" too. Because pretty much everyone agrees on the standard.
    Step 10: browser vendors change their browsers and people can use it without the browser-prefix

    I'm sure sometimes step 2 and/or step 3 are skipped.

    You can see a video of a coneference which explains it in detail:

    http://vimeo.com/16326857 from 20:36 till 32:00

    Summary: browsers implement what they want and when everyone agrees about the API it .

    While the process looks kind of weird from the outside. But the idea is that what becomes the standard should be stable, so it can be set in stone and works like everyone wants.

    --
    New things are always on the horizon
  35. Re:or even directly in Steam ?????? by somersault · · Score: 1

    It's been something like 7 years now, and you still don't know that Steam can play games offline?

    --
    which is totally what she said
  36. Re:How's the audio? LOL by PwnzerDragoon · · Score: 1

    Of course, I know there's a lot of work involved; like I said to justforgetme above, I was (mostly) joking about how long it seems to take. I realize it takes a lot of time to get everything right, and you need to do it right the first time or else everyone will support your broken version until the earth crashes into the sun. I'm just impatient and want my WebAudio NOW, dammit! :-)

  37. Re:How's the audio? LOL by Lennie · · Score: 1

    If you really, really do want it.

    You can help write the draft, it costs nothing to join the w3c mailinglists.

    --
    New things are always on the horizon
  38. Re:How's the audio? LOL by Ant+P. · · Score: 1

    Already exists, and already supported by Webkit. Firefox has a similar, but proprietary, interface.