





Localizing High-End Games for Low-End Machines 345
CowboyRobot writes "Intel engineer Dean Macri has an article at ACM Queue listing the challenges in designing PC games that will run on very different processors.
PCs vary widely in their performance, and if game developers design only for the high-end, they limit their market.
The article lists specific tips on how to guarantee that even old slow machine can run new games, such as 'the number of triangles used to create the trunks and branches could vary based on the available processor and graphics hardware performance', 'replace the clothing on characters in a game with actual geometry that separates the clothes from the underlying character model', and for simulating ocean waves, having low-end systems rely on basic sine waves while higher-end machines use more sophisticated methods."
frust post (Score:4, Funny)
This actually sound like a pretty good idea. Hey, I got one too. Perhaps they could just leave out the clothes completely on low end machines?
Re:frust post (Score:5, Funny)
TechTV's X-Play show once had a funny piece of video from a pre-release build of a Tomb Raider game for a console. There was a bug in the camera-angle determination at a certain point that accidently put the camera inside Lara's head, about where the brain should have been. The resulting display proved that Lara's head is indeed hollow.
Re:frust post (Score:5, Funny)
If that's true... (Score:2, Funny)
Unfortunately (Score:3, Informative)
Re:frust post (Score:2)
Graceful Degradation (Score:5, Interesting)
Yeah, it means extra programmer work on the design side because you're going to have to design a "smart version" and a "dumb version" for the effects you want to downgrade. You'll also have to select how you're going to measure system resources, and at what level of resources will the changeover for smart to dumb happen for each element. It's work, but I think it's an investment with a payoff.
The keyword is "graceful degradation". Take away the elements that contribute to the "wow factor" for the power user but the low-power user won't really miss. Background elements are the key thing you should be thinking about, especially ones that'll never have much direct impact on the outcome of game situations.
It's all about raising the spread between your "minimum" and "looks best on" system requirements. You want to get the minimum as close to the floor as possible, while having the high-end features will create great demo installations and really sell your game to the high-end fans. The more people who can enjoy your game, the more copies you'll sell, and therefore the more money you'll make. You remember money, right? It's the whole reason games are written anyway...
Re:Graceful Degradation (Score:5, Insightful)
Of course there's a flipside to this -- people with low-end machines invariably crank up all of the settings and then complain when it runs at 5fps (this happens all the time with current games, many of which do have detail sliders setting various levels of detail. Some games, like Operation Flashpoint, let you set a desired framerate and it varies the geometry complexity to try to maintain it). Alternately if the visuals are totally automatic people will complain that it looks like crap on their machine but looks great on someone else's machine.
Re:Graceful Degradation (Score:4, Insightful)
Re:Graceful Degradation (Score:3, Insightful)
The main point I think the article is trying to make is, that rather then developers making the change, making it easier to do in the environment. (eg, DirectX knows it's going to flop performance so it opts for a different way to produce the effects). Which isn't built into current Graphic development environments.
But needless to say hardware and software manufacturers are happy to sell multipl
woo (Score:5, Funny)
This is why I come to slashdot, the deep technological information you can't get anywhere else.
Old Hardware... (Score:4, Funny)
Re:Old Hardware... (Score:5, Informative)
Re:Old Hardware... (Score:3, Insightful)
AND, you run your xbox at 640x480 for the most part since this is what your average TV will display.
Re:Old Hardware... (Score:2)
Full scene anti-aliasing on interlaced displays (Score:5, Informative)
Games for PS2 render to a 640x240 pixel frame buffer at 60fps. This results in jagged edges. Games for GameCube and Xbox, on the other hand, typically render to a 640x480 pixel frame buffer and try for 60fps. For an interlaced display, they do a simple comb filter on the scanlines. This results in smoother edges.
Re:Old Hardware... (Score:3, Informative)
Good old Atari... (Score:2, Insightful)
Re:Good old Atari... (Score:5, Insightful)
Extremely obvious and predictable appeals to nostalgia seem to be really popular with mods on Slashdot.
You'd rather play Frogger?
Then my question is, for every person who claims they'd rather play Atari or any given classic system than a present day one, how many serious gamers who own both ACTUALLY spend more hours per week playing 1970s/1980s games than post 1990 ones over long periods.
It's often said, but it's an extremely few who can back up their whistful nostalgic ponderings by citing that as the absolute reality of their gaming behaviour. Heck, I'm a serious collector of TI 99/4A parts and games, owning and coveting some virtually non-existent or prototype carts, and even I spend far more time on my newer systems than on the TI 99/4A (although I played Parsec for the TI 99 a bit this afternoon).
I don't play it because it's better than my newer systems. It's not because it can compete. It's nostalgia.
I don't have a problem with nostalgia, but I do contend against the idea that something like Super Monkey Ball 2 or Metroid Prime can be outdone in general by something like my favourite TI 99/4A games. The technology simply did not allow all the things that a new game can allow us to do. And some of those new thing are fun, and immersive. So I refuse to believe that absolutely all new computer/gaming technologies and techniques developed since the 2600 have been completely irrelevant to the advancement of gaming entertainment, and that, Frogger being just as much fun as present day games, we may as well just go back to coding CGA games in BASIC for all it matters.
Re:Good old Atari... (Score:3, Funny)
This, of course, assumes that the enjoyment of a game can be measured by number of hours played. If this were the case, Everquesties must live in a state of constant orgasm.
Gosh. (Score:3, Insightful)
Re:Gosh. (Score:3, Insightful)
Good AI, effects, music, and so on will not make a game fun to play by themselves, but which was more immersive and memorable: a 'M' rushing at the your '@' in Angband or Diablo announcing your doom and hitting you with a lightening blast followed by an explosion of flame?
The rogue-like games and Diablo are basically the same game, but Diablo is more fun because of the addition of graphics and sound to a core fun game. Some games (Dungeon Siege) have the graph
Re:Gosh. (Score:2)
Well that's like, your opinion, Man. Rogue-like games still have some nostalgic charm, but that is pretty much it. Diablo had more depth than any of those games except NetHack, the genre itself gets old unless you are in the mood for some mindless fun - but it is fun.
Re:Gosh. (Score:3, Interesting)
Actually, understood in terms of game mechanics, the depth of Diablo (either release, with or without exapansions) is less than that found in most modern, "completed" roguelikes (many are extended programming exercises that never attain full realization). It's about on par with seminal games of the genre.
The only depth to be found in Diablo that exceeds a typical roguelike is to be found in the plotting of the storyline. Apart from ADOM,
Re:Gosh. (Score:4, Insightful)
Not a bad thing, as more often than not, roguelikes tend to choke on their complexities, leading to woeful imbalance/inconsistency or excessive demand on gamers to grok the system as presented to make any headway at all (NetHack).
Part of the perceived "imbalance" of Nethack (and a lot of other roguelikes) is that, in the roguelikes, often the best tactic is to run away.
Being a frequent reader of rec.games.roguelike.nethack, I notice that the ascention posts tend to include a lot of fleeing. There also tends to be a lot of "I'm avoiding level 15, due to a polymorph trap/arch lich problem, and level 19 due to a nymph that stole my fully charged wand of death."
A lot of other games don't teach the fine art of running for your life. A lot of other games allow you to be more careless with your character's life.
In short, there's a severe lack of paranoia that roguelikes demand.
Re:Gosh. (Score:3, Interesting)
Re:Gosh. (Score:5, Insightful)
I swear this is the biggest fallacy ever.
Have you actually gone back and played those old games recently?
For me games are very much like old comedy shows and jokes, because they're old, I've heard all the jokes before. In games, I've played all those old school games, I've heard the joke done to death and only gain enjoyment from the reminiscence.
Game genres have gone through evolution after evolution, each generation extracting and developing upon succesful ideas until we are at the current state.
Look at Pole Position, compare it to Outrun, and then Burnout, the evolution is obvious. Each game has kept the same gameplay fundamentals and expanded/improved upon them. Of course the increase in hardware performance has helped, but I would say that if the hardware was available at the time of Pole Position was made with none of the history of the racing game, we would have seen Pole Position simply with flashier graphics.
Re:Gosh. (Score:2)
Re:Gosh. (Score:2)
Just accepting your assertion for the sake of argument, I'm going to ask,
What is gameplay, and is it all there is to a game?
Is gameplay just mechanics? Because if so, I disagree that gaming should be "about mechanics" to the implied exclusion of other things.
Many a nostalgic geek likes to claim that graphics are unimportant. I disagree.
As an example, Chrono Trigger is regarded as one of the greatest RPGs of all time, if not the greatest.
You know what the f
WooHoo! (Score:2, Funny)
Re:WooHoo! (Score:3, Insightful)
No market for this (Score:5, Insightful)
Re:No market for this (Score:5, Insightful)
Modern games have amazing scalability even if they arent programmed in a special way. Simple graphics options like resolution, anisotropic filtering and anti-aliasing can be turned on and off according to how well your PC's horsepower matches the resources demanded by the game, and that doesnt even require any programming effort.
Having said that, a number of modern games automatically adjust LOD as needed. Sacrifice, Black & White, Second Life... dynamic LOD is not exactly rocket science and it can bring dramatic improvements to how much stuff you can cram into a scene.
Re:No market for this (Score:2)
a couple things one could do. (Score:2, Insightful)
open the source
maybe folks itching to play the game without spending money will figure out how to port it to their machines.
Re:a couple things one could do. (Score:2)
Or you could just go out of business right away and save time.
Re:a couple things one could do. (Score:3, Insightful)
Doom 3? (Score:5, Insightful)
Differences between the two (Score:2)
Re:Doom 3? (Score:5, Funny)
Re:Doom 3? (Score:2)
Re:Doom 3? (Score:4, Funny)
Re:Doom 3? (Score:2)
I think the Matrox Millenium was right in the zone for DNF graphics.
Jeez, I remember back in the day that all the game mags, and the online community were talking about the race between DNF and Unreal (Quake had been released at this point). Which game had what feature, who's level editor would be better, yadda, yadda, yadda.
Looking back, it seems that all the fuss (while great, I really liked the hype and the speculation), was for nothing. Unreal c
Re:Doom 3? (Score:2, Insightful)
Someone at their office should stand up and say, "It's dead, Jim"
Re:Doom 3? (Score:2)
I can't figure out why they carry on this charade. It's been 7 whole years. Perhaps they should kill DNF, and announce a new game using whatever tech it is they're building on these days. Make the game good, earn some respect in the community (which they are lacking), and earn a couple of bucks to keep the company going. In parallel to this, they should rethink the next Duke game, using new technology, and set some realistic goals for
Re:Doom 3? (Score:2)
Re:Doom 3? (Score:3, Funny)
We'll all be laughing at that statement in 2638.
Re:Doom 3? (Score:2)
Re: (Score:2)
As a programmer... (Score:4, Informative)
As a gamer, I have always had a laptop, as I move around so much, and I am very impressed by the scaling capability I have seen in recent games (Medal of Honor: Call of Duty, Morrowind) which have worked fine on my meager 32mb Mobility Radeon graphics card)
Same game, but different play per PC speed? (Score:2, Insightful)
--
Re:Same game, but different play per PC speed? (Score:2)
And to do that, they'll buy a better PC.
Re:Same game, but different play per PC speed? (Score:2)
most people that play all day long have the gfx quirks turned down anyways on online games, since most of the time they're just extra eyecandy that doesn't matter and sometimes even gets in the way of that perfect sniping shot.
most people want to fully experience games sure, but most people would rather not use another 600-1000$ to upgrade their box from few years back just because games manufacturers don't want to do any g
Why would they? (Score:5, Insightful)
Hell, look at most of the hot games coming out: they have marketing deals with the graphics card makers.
Re:Why would they? (Score:3, Insightful)
Re:Why would they? (Score:2, Informative)
Obvious? (Score:5, Interesting)
With the rushed nature of game development, I don't think game companies are that worried about this. It raises development costs without paying out much- most gamers keep up with the latest video card, processor, etc., and won't benefit from this.
The type of computer user that doesn't upgrade their system very often is the same user that doesn't buy very many games.
If these games were open source projects, these sorts of enhancements could be possible. Since the code is open and shared, some guy with a low-end machine wants better performance, so he writes simpler algorithms to emulate the real ones. When you build your own copy, you just pick which optimization level you want to be at.
Make it configurable (Score:5, Insightful)
That way he can choose whatever's important to him... if he's a big fan of realistic trees, let 'em have it at the cost of slower AI or whatever.
Make it auto-configure (Score:5, Insightful)
That way I don't have to study the impact of every single optional feature... if my computer can handle two pixel shader passes, 100 MB of textures, and models which have been decimated to 10000-20000 triangles each, I still won't have to know what a "pixel shader" is before playing.
User tuning. (Score:2, Interesting)
Don't forget to expose these options to the user. Games a pretty good at this nowadays, but it's pretty important that there's some way for the user to actually decide these things, they shouldn't all be left up to 'timing loops' and 'hardware IDs'.
Not only do some gamers perfer framerate over display details or vice-versa, but it's also important for the future where the same game might meet with hardware that is literally 10 times as fast as the state-of-the-art at the time it was released.
Re:User tuning. (Score:2)
Shooting for the middle (Score:2, Insightful)
Games already have a lot of features to make them playable on older hardware including resolution options, fog, shadows, detail level, etc.. Hardware also moves pretty quickly. By optimizing in the general case you'll also
UT2004 Software Renderer (Score:3, Informative)
Re:UT2004 Software Renderer (Score:4, Informative)
Valve Survey (Score:5, Interesting)
The most annoying thing about detail controls in games is that it's unclear what you (the end-user) are changing when you tweak the knobs. As a developer of 3d applications, (who's guilty of same), I think I'll approach this in the future by giving users immediate feedback: "Here's what your scene will look like with low shadow detail. Here's how smoothly it'll run, on average."
Re:Valve Survey (Score:2)
Methods (Score:5, Funny)
It looks better if you just use a cosine...
Re:Methods (Score:2, Funny)
A certain amount of luck... (Score:2, Interesting)
Graphics cieling (Score:2, Interesting)
It's The Graphics Card Stupid (Score:5, Informative)
I'm using a GeForce2 GTS from '00 at present and I certainly feel it. Vice City can drop to a crawl at times and other games need the graphics options knocked back quite a bit in some cases. While the $300 I spent on motherboard and processor upgrades are noticed the same amount of money needs to be put into a graphics card to really notice an improvement in frame rate and for almost all intents and purposes, actual improved performance.
The graphics card is increasingly becoming a major (not to mention expensive) bottleneck that needs to be upgraded on a much faster path than the rest of the system to stay competitive. The only advantage here is that in many cases a weak processor can be enormously helped in some cases by a cutting-edge graphics card.
While the article has a lot to say on this topic and it's certainly one of the easiest changes to implement scalability in it can still be a problem in many cases and should perhaps be addressed more seriously. Graphics technology, moreso than any other part of the computer is really what's driving gaming these days and should be watched closely to keep it in check.
Some games do this (Score:3, Informative)
Not bad for a game by Microsoft (and Big Huge Games.)
This is why they left for the consoles (Score:3, Interesting)
Computer games were always better then the console ones, were first with 3d, first with networking, you could use mods etc.
But now all the small gaming companies no longer like the pc. Id software and a few others are still around but most people use consoles for games and work on pc's. This leave even less incentive for a small gaming company to consider the limited pc market.
I was hoping Microsofts Xbox would bring in new games to Windows. It did not and now they are leaving the intel platform so that hope is gone.
Fractals (Score:5, Interesting)
For example, refer to Koch's Snowflake [ctc.edu]
On a low end machine, only two or three iterations would be needed to create a decent snowflake. On a high end machine, you could iterate this function a hundred times with various compounding affects such as rotate, copy, resize, diff, transparency, and so forth. With high end machines, you can do close ups of snowflakes without any resolution loss... And most all of this is using the same algorithm as the lower-end machine would use...
Granted, the fractal algorithms have to be well designed and thought out to achieve this effect. A basic Koch's Snowflake algorithm at high iterations doesn't look too much different from lower iterations... Some transforms would need to be introduced to the algorithm, but those could also be scalable...
Anyhow... $0.02 cents
Re:Fractals (Score:5, Informative)
And don't mention MP3. MP3 optimizes for size, not for simplicity, eating up way more CPU time than uncompressed WAV.
Re:Fractals (Score:2)
Also, I would think a snow flake is actually a flat square polygon with a texture being used to picture the ice crystal. It would be rather foolish to make a complex polygon for each and every snow flakes
Re:Fractals (Score:2)
Different Code = Different Bugs (and exploits) (Score:5, Insightful)
Sounds like about 10 million "he hacks!" calls waiting to happen.
I remember people turning the smoke off in their Halflife clients because they wanted to see through it. At one point, my graphics card driver wouldn't even
Let's try an alternate approach: let's market the games for the sophisticated gamer and that will get more people to buy better machines. Not everyone is rich, but (see above) It's the Graphics Card, Baby!
localizing?? (Score:5, Funny)
scalability is king (Score:4, Interesting)
As far as keeping in line with the article I do believe that instead of a diverse platform on which to design games, we are going to instead have more specialized products such as the Xbox and the TiVo that are going to destroy the computer's list of abilities one by one. In the end i see more and more Dell's and HP computers turning into conversation pieces instead of being diverse, which is in direct support of the premise of the article. Diversity in this field currently leads to an inability to produce games that sell well to an uninformed culture, instead you are developing games like GTA which was developed separately for 4 different systems instead of all at once like Sonic Heroes.
Don't check architecture! (Score:4, Interesting)
Re:Don't check architecture! (Score:5, Informative)
The first one does not allow you to take advantage of many new techniques. You have one version of everything, and takes advantage of a few 'eye candy' features, if present. The second one, which is what many games already do, is have many performance classes. For example, the machine falls into a bin of "Base Requirements Version (bad graphics, slow CPU)", "Version 1 (3-year old expensive system)", "Version 2 (1-year old expensive system)", and "Version 3 (today's $4000 system)". They then develop between two to four different algorithms, and a *LOT* of glue code so the displays don't look too different. The third option is to have both of the above options, plus global CLOD, procedural and implicit surfaces, and more advanced processing that takes so much math that a 3-year-old CPU can't handle it.
For example, page 6 discusses using high-quality water on faster machines, and low quality water on slower machines. They only touch on why it might be a problem, stating "fluid simulation will have to be either devoted entirely to ambient game effects or simple enough to run on the minimum system specs without any scalability to higher systems. Most likely, the introduction of fluid simulation to actual game-play, not just ambient effects, will require the combination of both, so the visual quality may be scalable but the simulation quality will be fixed."
Let's try to consider what the article REALLY means for this type of case.
First, we'll assume that water is critical to the game, and not just some fancy external thing. Maybe players are all riding around on jet-ski's or moterboats or battleships or something. The developer now has a choice. They can either:
This isn't just an issue of adaptive level of detail or swaping algorithms. Because this represents basic game states, it must be kept in sync on all clients, meaning it's an all-or-nothing decision. Do you want realistic ocean waves in your water game, or do you just want waves?
Let's look at another issue they bring up on page 1 -- Integrated Graphics Cards. (just typing that makes me shudder.)
Many integrated graphics cards don't have dedicated memory. Just looking through a Dell catalog will have little footnotes next to laptop and 'economy' computer memory numbers, system memory will be shared with graphics and audio processing. The board might have a fancy nvidia or ATI processor on it, and the card might be able to do all of the algorithms just fine; but the moment you run some combination of algorithms at the same time, they fight for the same CPU and memory spaces, and grind to a halt. In this case, the system stats themselves could be more than enough for the game, it's the motherboard or some other component that's the bottleneck.
In that case, dynamic algorithm selection is basically required, and is something many games already do.
But how long can we keep it up? Right now we already have to code for:
When is it too much? Already, we have to test dozens of different configurations.
That's what the article was asking. How can we have the third option (infinite scalability) without ignoring all the lower-end 'budget' PCs?
The question is still open.
frob
Seperate the clothes from the character.... (Score:5, Funny)
Quake 2 with nekid Stroggs galore.
Wolfenstein with a nude Adolph Hitler
GTA 2 with realistic squeeky vinyl bucket seat sounds.
Silent Hill's "playdead" of the month.
Warcraft 3 expansion - Frozen Cajones
and Frodo still says "I am naked before the wheel of fire" in LotR, but he's grinning.
Moot point really... (Score:2, Insightful)
The net result of spending thousands on making your game engine run on machines that are old when you release it is a totally false economy. Games development needs to take into account the future and scale upwards, not downwards. I want my software to run better in the future, not better in the past!
I suppose the only point at which this might be useful is when portable and phone hardware is capable of running what we'd con
Yeah, except (Score:4, Insightful)
Hopefully PC gaming will turn into a proving ground for the up and comers...
Hopefully.
Dave
How much do graphics affect multiplayer? (Score:3, Insightful)
I'd be interested to see how much both lack of detail (lower resolutions, turning off dynamic lighting, and the like) and bad framerate influence players' performance. My guess is: not much, and quite a bit once you go under 25-30 fps or so.
Make 2 engines (Score:4, Insightful)
Why not just write a good low end machine engine that will be killer on a high end machine?
This is an Intel commercial (Score:4, Insightful)
This guy is not a game developer. He's an Intel marketeer.
Notice what he talks about: Hyperthreading and Intel instruction set extensions. There's no discussion of the graphics subsystem, programmable shader pipelines, multipass rendering, lighting, Z-buffering, or texture memory - the things that concern graphics programmers for games today, and things that Intel doesn't do very well.
The Problem is not in the hardware being too slow (Score:4, Insightful)
Scalability (Score:4, Interesting)
Have a central box that controls the game mechanics, then farm out the rendering engine to multiple servers. Most homes are moving to multiple computers in any number of of applications.
Now, I generally loath the idea of gridcomputing, but rendering is one of the areas it is good at. Have a central box run calibration tests for the graphics flow, then you can add or remove additional processors as needed. A single processor would represent the lowest level.
So, market a generic game rendering standard that can be ported to any sort of processor (including embedded cpu appliances ), then focus on the console box or computer to combine the results.
Re:Scalability (Score:2, Interesting)
Re:Scalability (Score:3, Insightful)
The point is that you already have 3 or 4 processors in your house already. And, the trend is towards ubiquity. Once you break the single thread paradigm of game servers, then the selection of how you manage the threading is a somewhat arbitrary decision. Whe
Re:Scalability (Score:5, Informative)
Yes, but not real time rendering!
Re:Scalability (Score:2)
Gridcomputing has horrible latency.
Real reasons hardware sells (Score:3, Insightful)
1. The article is old news/looking at eye candy. Trees are a good point, but some games already do it for scaling into the distance. Simple enough to re-use this code for scaling with performance. Cloth etc are just eye candy. Be interesting to see cloth as a gameplay feature, but the biggest use these days is in the flags of Capture the Flag game mode. Heck, Unreal Tourney did that years ago on my humble 300MHz MMX.
2. Implement that supe
Re:yeah (Score:4, Insightful)
PC games keep pushing the limit higher and higher for requirements.
Consoles are equally as bad now. Don't they have PS3, XBOX2 etc coming out in 2 years.
Imagine having the buy a new house every 4 years because your furniture is not compatible. This is the gaming industry tactics.
Re:Charming (Score:2, Insightful)
Sounds like a dead-end street to me. There's a significant market out there (casual, rather than die-hard gamers) that doesn't want to spend hundreds or even thousands of dollars to upgrade their systems to maximize the gaming experience (or to be able to play the newest games at all.) A parent who just spent $1000 on a stock Costco computer, for example, is not going to hand their kid another five hundr
Re:Charming (Score:2)
The people driving the overclocking movement may buy a disproportionately large share of games per capita, but for every one of them, there are a hundred people who are just going to buy a good, relatively new system, and a thousand who just want to run the game without trading their firstborn for a
Re:Charming (Score:3, Informative)
Beg to differ. Businesses buy expensive systems to use as servers. The only reason you'd use that much money is top-flight hard disks, gigs of RAM, RAID arrays, etc. (See ArsTechnica's insane "God" Box [arstechnica.com] ($10k!))
Re:Tyrian (Score:2)