Valve's Gabe Newell Speaks on Console Development 529
A user writes "Gabe Newell, of Valve fame, criticizes Microsoft and Sony on how difficult it will be for next-gen developers to produce games on their upcoming hardware. He is especially critical of Sony's model, where code written to run on Cell will be very hard to port to other systems, and vice versa. Will this bring upon a new era of PC Game superiority? Only time will tell. In the meantime, Newell says he believes that Steam-like systems will be extremely helpful for developers on the new consoles due to their ability to provide updates and new content."
Re:Pots and Kettles (Score:3, Interesting)
It seems like the entire plan *IS* to make cross platform (Xbox/PC) games easier to make.
Something like XNA, if it proves to be useful, could very well swing a large pendulum in Microsoft's favor.
How expensive is an XNA developing environment anyway...I assume it would be much cheaper than the hardware/software required for Xbox/Playstation development.
Comment removed (Score:5, Interesting)
Re:Pots and Kettles (Score:5, Interesting)
I'm sure that's the kind of thing Microsoft loves to hear after spending the lifetime of the Xbox being absolutely rabid about games not being allowed to patch themselves. MS has put a lot of effort into trying to keep their console running finished products, not hack jobs that aren't playable until three patches down the road, and now Valve wants to foist bug fests upon console players.
Maybe -- just maybe -- this type of plan will finally beat Valve over the head with a clue stick. After the abortion that was Half-Life 2 and the abomination that is Steam (interesting idea, crap execution), I'd be really happy to see them get back to the ground they seemed to be breaking with Half-Life.
On top of it all, on what planet is Gabe living where everyone has broadband enough to want to patch their Valve console games over and over? I can do other things on my computer while it downloads patches. On a console, you get to stare at a progress screen until it's done. No good. Especially not at 50 bucks a pop for console games.
What's so special (Score:2, Interesting)
Steam-like systems will be extremely helpful for developers on the new consoles due to their ability to provide updates and new content.
Isn't it just a glorified download interface?
Distributed programming is hard ... (Score:2, Interesting)
Now, there will essentially be two classes of games in the next generation; the graphically impressive and technically superior games and the games which are only a slight improvement over what we've seen on either the Gamecube or the XBox.
Valve's comments don't really matter that much, because producing games for the PC will be several times as complicated as it ever was before. If you started producing a brand new game today you would have to consider low, mid and high level single core as well as low, mid and high level multi-core systems; not an easy choice considering the single core systems will potentially perform much worse with distributed algorithms whereas the multi-core systems will perform dramatically worse on a single threaded system.
At least the developers will not be given the necessary time to tweak their code on the PC until after the game is released (Just what I always loved, buggy games).
Hmm... (Score:5, Interesting)
To meet some of the other points he's raised doesn't take too much effort either:
Apparently nothing in Vista helps him out at all? What a shame. I fail to see how that is particularly relevant, especially since it really doesn't make anything worse. XNA might change things for Valve, but that's not the same thing. Valve only target one OS. If that OS changes under them, perhaps they should have practiced cross-platform development to cover that eventuality...
I'm not really surprised he says Xbox 360 makes his life worse - a lot of the planned online functionality MS have in store renders Steam somewhat irrelevant.
And I think he's being a touch cynical about the reasons for Sony's Cell architecture (disclaimer - I work for Sony). But I suppose he could be correct. Again, though, there are techniques for cross-platform development which Valve hasn't bothered its ass using.
If you stick with writing games for x86 Windows, I don't feel much sympathy for teething troubles when you start hitting the console hardware. Mainly because (shock) it really isn't all that different for the majority of the coders! Yes, you'll need specialists. But huge chunks of stuff won't need to change at all - game logic, frontend, scripts/scripting. This isn't rocket science, and many companies have been releasing titles near-simultaneously on multiple, drastically different hardware platforms for years.
Sour grapes from a Win32 codeshop. Who'd believe it...
Re:Oh, like me? (Score:2, Interesting)
I wish they would realize they are loosing sales over this and just trash the thing.
Let Me Say For Console Engineers (Score:0, Interesting)
The reaction in the console world to has been hilarious. Some guy who used to work at Microsoft and hitches his company completely to that technological nightmare that is Visual Studio/DirectX/Windows/x86 is crying over the fact that he is now screwed technologically in his ability to compete in the lucrative console market.
Well boo-fucking-hoo Gabe.
You made your choice and no you have to live with it. Just like you made your, idiotic, choice to use Outlook...
Those of us with a fucking clue who actually work in the console biz have been working our way to the promised land for years now. And with the PS3 we have arrived. You guys haven't seen anything yet with what we are doing and will be doing with the PS3/Cell/RSX hardware. It is a game/graphics programmers dream system.
Not only is the PS3 a dream system, the unlimited scalability of the internal bus architecture of Cell chips means our code bases are ready to scale to unbelievable heights of performance in future media devices that use multi-Cell systems or Cell chips with more SPUs.
So, yeah, it must suck to be stuck in x86 directx land.
BTW, all you crazy Linux cats are going to get to have fun with your very own Cell systems soon:
http://kerneltraffic.org/kernel-traffic/kt2005090
Enjoy! I know I am...
Re:Oh, like me? (Score:5, Interesting)
I didn't have to buy a DVD-drive, i didn't have to leave my room, i ordered it via steam with my creditcard, preloaded the content, and played at the day of release.. I now enjoy patches without having to pay for fileplanet to download it, I enjoy being able to setup a dedicated server simply by running a simple commandline steam tool on my linux server, I enjoy valve doing hardware surveys to make it easier for everyone developing games, since you will get an idea of what the average gamer has in his machine, I enjoy valve releasing new models, maps and hotfixes on the run wihtout having to wait to gather it all in one patch...
And what i really enjoy? Valve getting my money when i buy their games, and no Vivendi, EA or whoever publish their games..
head in sand about computer architecture trends (Score:5, Interesting)
Newell was equally harsh, if not more so, on Sony for its design of the PS3 architecture and programming environment. "There are incredibly few programmers who can safely write code in the PlayStation 3 environment. And I totally see why Sony wants people to write code that runs on seven SPEs and a central processing unit, because that code is never going to run well anywhere else," he said.
What he seems to not understand/want to pretend isn't the case is the fact that the architecture of the Cell is a reflection of longstanding trends in computer architecture, not an exotic thing that Sony dreamed up to be troublesome.
In particular, there has been a longstanding disconnect between the growth in the amount of memory bandwidth available to chips versus the amount of computation that can be done on them. Computational capacity is growing much more quickly than memory access. Over enough years, this disconnect makes a big difference! Nowadways, processor architects will tell you that computation is basically free while communication is what is expensive.
Architectures ranging from GPUs to multicore CPUs to Cell take advantage of these trends in various ways, deliving much more computational capacity than standard CPUs. All of these architectures are deeply inherently parallel. There just isn't any other viable way to take advantage of all of this computation.
John Owens has a nice chapter in GPU Gems 2 [nvidia.com] on this topic.
If Newell (or whoever) doesn't want to program the SPEs on the Cell, he's free to just use the PPC CPU on it. And his game will be much slower than someone who uses it well. But there aren't going to be very many performance gains in the future to be had from single-threaded code running on CPUs. So while Cell is not trivial to program, none of the other choices are any easier. (Note that there are C/C++ compilers for the SPE instruction set, etc, so they're not *that* hard to program.)
(I'd like to hope that Newell actually knows all this and is just posturing in he middle of his Steam pimping and that this doesn't reflect reality in Valve's world!)
-matt
Fan-boys go away... (Score:2, Interesting)
Its a fact that, n parallel processors is less efficient than one n-times-faster processor. And Sony does have some quite none standard C++ extensions compared to microsofts use of OpenMP.
not portable? (Score:2, Interesting)
Is that changing in XBox360? or has there always been high discrepancies between XBox's DirectX and Window's DirectX?
And what does Nintendo do that makes it easier for them to port (noting that he didn't criticize them). I'm pretty sure Nintendo uses their own proprietary graphics engine too. Speaking of that, HAS ANY GAME CONSOLE ever made it easy to port games to and from their console?
Game Programmers are weird. (Score:2, Interesting)
Word is they couldn't even get Half-Life 1 to run on Macs because there was too much platform-specific code. I'd assume the same issue occurred in HL2 (there was an Xbox "port", but that's really just a repackaging of a windows app). Most other groups of programmers would seriously love to have the opportunity to write code for neat new hyper-parallel chip designs. The entire game industry apparently can't figure out how to make sound and video run in separate threads, something which should seriously be an over-the-weekend kind of change.
I really don't mean to belittle the entire game development community, but I really don't get it. The entire computing industry is moving toward multi-core chips, parallel computing and network-centric storage. Why the hell are game programmers, the ones who are supposed to be pushing computer architectures, living in the early 1990s?
Steam-like system (Score:3, Interesting)
However, I DO think that Steam and Steam-like systems, properly done, have great potential to break the strangle-hold that the publishers have on the industry. An alternative, low-cost, popular (that is the tough one) distribution system could create a market for smaller developers and games with smaller budgets that won't get picked up by Sierra and EA and won't ever get on store shelves. Everything people hate about today's game industry could be destroyed by good independant distribution.
Re:Pots and Kettles (Score:5, Interesting)
and what about modem users? (Score:1, Interesting)
Oh, and I can't forget, if I want to play counter-strike online and there happens to be a new patch (2-3 hours download) for half-life2 I can't just disconnect and play half-life 2 anymore offline. I have to go download the crappy patch which is forced upon me before i can play half-life 2 again.
What a load a crap. I'm never buying a game that uses steam again.
Re:c'mon (Score:3, Interesting)
Offtopic bit (sorry but it will tie in at the end): Multithreaded games remind me of the same silliness of monolithic vs micro kernels. Back when Linus introduced Linux, there was a debate with Mr. Tannenbaum (creator of Minix), Linus and other users over which was better. The micro kernel idea, which minix used, was seperating things like disk i/o into seperate proccess outside of the kernel. Basically the kernel became very small, and managed things like messaging between the proccesses. There were some reasons for this that I won't go into. You can read the beggining of the book Open Sources, which is free online, for the story and logs of the debate. Anyways, these kernel's simply didn't preform better than monolithic kernels such as Linux, even though they should, and were not more stabble, even though they should've been. They sounded great on paper, but no one had been able to implement one realistically. As we can see, Linux is one of the fastest/feature rich kernel's out there (at least the 2.6 branch) yet it is still monolithic (although you can have modules - but not for everything, not for the most important things) We also have OSX, which adopted most of the MACH kernel, and is therefore a micro kernel, but as you can see by the recent benchmarks ars technica (I think it was them) have posted, it still doesn't compare to Linux for most things (like mysql and server stuff), although it is equal in others, like workstation stuff.
Anyways, sorry for the completly off topic exposistion, but I think we can learn a lesson here is that even though something may sound good on paper, and be theoretically a better way to do things, I can imagine it not working out, but maybe it will. There's alot of potential for dual core (The DS already uses this, the N64 did etc) and maybe even triple, but Sony's Cell CPU, with one main core and seven little SPE's is just overboard.
Re:Spoiled brats (Score:3, Interesting)
See, the problem is that Sony's architecture is very powerful in numbers. The 2 TFLOPS number is real...in a very, very limited set of circumstances. Cell is designed a lot like a GPU in some aspects, and a lot like a video decoding processor in some aspects. Unfortunately, neither one is useful for game programming (remember that Cell does not participate in the rendering pipeline of PS3, that is handled by NV's RSX). Now, like some people have pointed out here, Newell is a whiny bitch who wouldn't know portability if it smacked him in the face. But that doesn't change the fact that Sony is making life difficult, and it's not yet clear to most people whether the Cell architecture is at all useful in games. Personally, I'm inclined to say no, but I'm an amateur/college student, so take that as you will. However, it's definitely solid fact that Cell is very different from anything else out there, which sucks. Add to that the problem that developers by and large are not convinced that Cell is different in a good way (and I know quite a few devs), and things are really a bit of a mess.
This is what bothers me most ... (Score:3, Interesting)
Halo and Halo 2 were games designed only for X-Box (and later they made a PC varient) that sold wonderfully. Haven't we finally come to a point that it can be proven that a title can be successful if only written for one platform?
Halo and Pikmin are two games that I absolutely love to play, but are only available on one system (XBox and Gamecube respectfully). This idea that you have to have a game play on every platform is the pitfall that we've experienced in special part thanks to EA.
Even today most games are designed to play on the xbox or playstation 2. Nintendo has been making millions of dollars since day one making and endorsing games that are only available on their systems, when are the other consoles going to start to do the same?
If you write a game for portability and not to take advantage of the pros of a system then you'll have the same mundane game across all platforms.
Re:"PC Game superiority"? (Score:3, Interesting)
When the makers of the big 3 FPS games all agree on it, I think there may just be a real issue.
Re:This is what bothers me most ... (Score:2, Interesting)
Nintendo Revolution (Score:3, Interesting)
The only thing that is holding Nintendo back now is the "family oriented" image they have always paraded. It will be interesting to see if Nintendo maintains this approach, or whether they will change this?
Resisting progress (Score:3, Interesting)
what hes saying atm is its bad that sony are using a new and possibly better architecture just because no one else is
Re:Pots and Kettles (Score:2, Interesting)
The steam system seems to introduce more bugs than it fixes, and yes I'm a victim of one. I've replaced my entire computer piece by piece trying to resolve this strange crash I have. After tons of tedius tweaking and redownloads, an OS reinstall (redownload), new video card, new sound card, motherboard/processor/RAM replacement, new HDD, and recently a bigger case and power supply.
The only common thread I can figure out is both cards are nvidia and processors were both AMD (XP and now 64).
Nothing was wrong with my computer before except it was a little weak, it still played most games fine. Now I've rebuilt it completely, thanks for the upgrade Valve. Still have the same problem and I'm done with it. $60 down the drain but good motivation for a new PC, I don't care to think about how much I spent on that.
Software curve of bugs vs. patches over time anyone?
I'm seriously considering dual-booting into a 64 bit linux and only keeping windows for the games made by good publishers as I've lost my passion for the last thing that kept me booting this crap.
Re:Hmm... (Score:3, Interesting)
That's not what makes his life worse. It's the multi-CPU aspect. Same as with the new Sony Cell chips making things diffucult.
Check out his other interview on the same topic [bit-tech.net]
Oh, in case you think he's still just upset about your company 'rendering Steam somewhat irrelevent', check out what John Carmack [techreport.com] of Id (DOOM 3) and Tim Sweeney [arstechnica.com] of Epic Games (Unreal Tournament) have to say about the topic. Those two don't have any Steam to worry about, but agree with Gabe.
A Sony employee dismissing criticism of Sony. Who'd believe it...
Re:Spoiled brats (Score:3, Interesting)
Re:"PC Game superiority"? (Score:3, Interesting)
It's pointless criticism. Yes, things actually do change, believe it or not! Besides, Valve will face the same (well, actually worse) problems with PCs, so they really have no room to complain.
The fact that Valve is now ill-prepared and complaining when this was all well foreseen is what's so infantile about their ramblings.
Re:Game Programmers are weird. (Score:3, Interesting)
Firstly, you were not necessarily programming to a standard library, and you weren't necessarily programming in C or C++. You didn't get those abstractions.
Also, you were programming to specific hardware that was built into the unit to try to squeeze extra performance out of the hardware limits. So you end up with things like the tile engines. Every one of them has different modes that mean that the screen is a different resolution, the color depth is different, the color usage is different, the memory structure to store and display it is different, all your sprites are different pixel sizes and can have different numbers of sprites, all with their own limitations on how many you can have per line, etc.
Keep in mind that you never have enough power to do what you want to accomplish. So, if you build a game to the best of the hardware abilities of a system, you have just irrevocably made a commitment to that hardware platform. As soon as you want to port it to a different system, you hav e to resize all your sprites, change the color pallete around, change the gameplay to accommodate the smaller number of sprites for the other system, and optimize the assembler for that CPU. You get less memory, so now you have to come up with a way to swap sprites in and out of tile RAM without interrupting gameplay.
This shit is hard. Now, I can't speak for newer game systems except by what I've heard, but I do know for example, that some games from one system to the next still have to be pared down because of overall VRAM, texture and and system memory limitations from one machine to the other. On a PC, you might just code for the lowest common denominator, but that doesn't work on consoles. This is just a guess, I really can't speak to that. But at least in the past, there was a very good reason it was hard for game programmers to make "portable" code. The machines you were coding for were completely different at the implementation level of game coding. No one was even making cross-platform libraries for coding. There especially was not libraries for things like multithreading (the saturn had two CPUs, but the lack of good libraries for coding for the Saturn's unique features was one of the reasons that Saturn games never lived up to the expectations for the hardware. I wonder if this will be the same for Sony and their Cell architecure. It sounds like the same thing all over again, except that this time we have good general purpose libraries that will be ported to the system. Hopefully there will be people that know how to use them.)
Re:great (Score:3, Interesting)
Re:Pots and Kettles (Score:1, Interesting)
Yes, I really loved spending an entire game doing this:
1) Meet some people. They are all excited to see the 'famous' Freeman guy.
2) They tell you need to go someplace else
3) You go someplace else only to be interrupted by the same staged ambushes two or three times on the way.
4) You get someplace.
5) Goto 1)
Yawn.
I guess the peecee game market is so dead outside of MMORPGs that crap like that is considered 'amazing'
Oh yeah, they also bolted on a third party physics package so you can have all the gameplay those OpenGL/physics/box demos have given so many people over the years, BUT IN AN ACTUAL GAME YOU PAY FOR!!!
Re:Pots and Kettles (Score:5, Interesting)
steam is forbidden from ever being installed on any system i own period. i loved halflife single player and was looking forward to its sequal. i almost bought it. i played it briefly at a friends house and was about to walk out the door to go buy it when he mentioned that he had had to validate with steam for playing the first time. this was with a store bought retail copy.
i hated steam since its inception, unstable buggy POS software originally. i am sure they have taken care of any stability issues since then but i refuse to have a game developer tell me that i have to be online to play a single player game. i refuse to have a game developer tell me that he can install and do anything with my computer that he wants to at any time and i just have to suck it up. screw that.
i voted with my wallet. valve will NEVER have me as a customer as long as steam is a requirement.
Re:Pots and Kettles (Score:3, Interesting)
I keep all of my games/music/work/downloads on a separate drive. When windows inevitably dies, I simply format it's partition, and reinstall there. All the data on my other drive is still intact. Of the few times I've done this, steam has worked fine immidiately following my successful login. No reinstalling, or re-registering of the games already attached to my steam account was required.
Get Over It (Score:2, Interesting)
Re:Pots and Kettles (Score:2, Interesting)
This is what's wrong (Score:5, Interesting)
Sega managed to run new levels off a memory card just fine, for example in the Dreamcast version of Skies Or Arcadia.
"And honestly, what's wrong with FIXING something? I see no problem with updates."
I _do_ see a problem with shoving a broken, disfunctional product out the door. I very much like it that when I buy a game, it actually works. I _do_ see a problem with paying to be a beta-tester for EA's, Vivendi's, etc, buggy unfinished crap.
And especially I _do_ see a problem with patches that screw up my saved games directly (I can thing of a dozen games, starting with Fallout 2, where applying the patch forced me to restart the whole damn game from the start), or indirectly (yay, for some RPG patches where they randomly altered the game balance and made all my character's skills useless, _and_ made a bunch enemies immune to physical damage... when I'm playing a fighter. What am I supposed to use there? Bad language? Time to start a new character again.)
That's what I liked about console games so far: when I buy a game it's a _finished_ product. I can think of only exactly _two_ console games that ever needed a patch, out of the literally _hundreds_ I own. (And out of those two, one had a free replacement from the publisher, and the other "only" had multiplayer exploits, but was otherwise rock-solid and enjoyable as a single-player game.) The rest just worked.
That's it. When I buy a console game, I _know_ it will work. From day one. I can randomly pick any game off the PS2 aisle, take it home, pop it in, and _know_ that it'll never crash, never fall into the void, and generally just work.
You know why? Because the publisher knows it can't be patched, so they'll test the _hell_ out of it before release. And if they're running out of time or budget, they'll cancel a game, but never shove an unfinished piece of crap out the door.
Yes, no software is perfect, but there's a _massive_ difference between having some minor exploit in an obscure sidequest (like being able to claim your reward twice) in a console game, and the utterly broken stuff that gets shipped on the PC on account that it can be patched later.
That's what's wrong with "FIXING something" in the PC world. It's something that sounds _great_ in theory, but in practice it's what caused the deluge of unfinished buggy _crap_ shoved out the door untested. It just caused the "ah, it shows the starting menu, let's ship it. We can patch it later" mentality to run rampant.
It caused such crap as, say, the German version of Victoria which literally could only show the startup menu as released. _Literally_. If you actually tried starting a campaign, the game threw a script _syntax_ error. Yes, a _syntax_ error. Not something even remotely blamable on drivers or hardware. It had a typo in the scripts and couldn't run on _any_ hardware.
Re:Big can of worms (Score:2, Interesting)
I like Steam though. It gives me advantages over the CD version.
1. I can download the game from any computer without the physical media.
2. I never have to search for patches, and it is always up to date.
3. I have gotten 3 expansions for free (HL2:Deathmatch, Opposing Force, and Blueshift) I will also be getting Lost Coast soon. They could give me free stuff without Steam, but this makes it easy.
Then again, I've never had any significant problems with Steam. And I can understand some frustrations that some people have... but those problems haven't affected me.
Comment removed (Score:3, Interesting)
Re:Spoiled brats (Score:3, Interesting)
I agree it's not as good as actually having a higher number of registers -- if the register pressure is high, there may be a lack of load/store ports, and code size is increased -- but ultimately most parallelism can be exploited and that's what matters. The fact that recent x86 processors perform as well as their RISC counterparts is a testament to that.