Slashdot Mirror


Localizing High-End Games for Low-End Machines

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."

14 of 345 comments (clear)

  1. As a programmer... by SisyphusShrugged · · Score: 3, Informative

    As a game programmer and developer http://igerard.com, I have worked with a number of systems that scale to the specs of the system. Most recently I have worked with the Torque Engine, which has some scaling capability, and with my own engines (although they usually dont require so much processing power).

    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)

  2. UT2004 Software Renderer by Xenolith · · Score: 3, Informative

    There will be a software renderer built into UT2004. This means you don't need a 3D capable video card installed to play UT2004. It does help if you have beefy CPU if you use this mode, since that will be doing all the work. It isn't pretty, but at least you can play.

    --

    Journal
    1. Re:UT2004 Software Renderer by Lehk228 · · Score: 3, Informative

      the unreal line of games have always scaled nicely to match the system, original UT was playable on a gateway astro 400celery with intel graphics and looked awesome if you put it on a nice system, 2k3 looks great on a radeon 9700pro 128meg agp but plays just fine on a gf2mx400 64meg pci.

      --
      Snowden and Manning are heroes.
  3. It's The Graphics Card Stupid by Belgand · · Score: 4, Informative

    Increasingly I've seen the reliance on a better graphics card to significantly improve frame-rates the most. Take my current box, in the past few months I just upgraded my PIII 450 from '99 to a P4 2.6 800Mhz FSB. RAM went from an initial 128MB to 320 MB SDRAM last year into 512 MB DDR dual-channel now. The overall improvement in gaming has been limited though. Yes, things do run much better than they did in the past. Massive numbers of units and other computationally intensive tasks have obviously seen the most improvment, but the graphics card is holding everything back.

    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.

  4. Some games do this by activesynapsis · · Score: 3, Informative
    Rise of Nations already does this, so maybe this trend is already starting. In RoN, the video card, memory, and CPU get grades (A, B, C, D, F) and the details/# of polys used is throttled down based on the grades. Of course, even with most things down the game still uses 256 megs of ram due to the sheer amount of content.

    Not bad for a game by Microsoft (and Big Huge Games.)

  5. Re:Old Hardware... by gilesjuk · · Score: 4, Informative

    Might be moderated as funny, but a 64MB Pentium III box with some old NVidia 3D chip is fairly low end these days. The difference is the games are optimised for that CPU and 3D chip.

  6. Re:Scalability by Gherald · · Score: 4, Informative

    > I generally loath the idea of gridcomputing, but rendering is one of the areas it is good at.

    Yes, but not real time rendering!

  7. Re:Fractals by SharpFang · · Score: 4, Informative

    A fractal is defined as whole from the very beginning. Pick a set of parameters, apply to equation, you have whole fractal. Change one parameter, whole fractal is changed. Unlike mgreat most of objects in game, where they are defined point by point, changing one of them changes a single piece of the object. You can't apply the same simplifications to koch's snowflake and to human's head, just because human's head isn't a fractal. True you can drop points, but then results suddenly become really awful. Drop every fourth point and suddenly teeth become random sharp spikes, nose becomes a pinokio'ish point, ears get asymmetric... It's not math, it's art. Get an artist miss out every fourth note in a song and you get about the same result.

    And don't mention MP3. MP3 optimizes for size, not for simplicity, eating up way more CPU time than uncompressed WAV.

    --
    45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
  8. Re:Why would they? by tono · · Score: 2, Informative

    You just answered your own question without realizing it. They program scalability in games so that someone with a slow computer can still play it, and then turn up all the graphics options and see how very beautiful it was on a high end machine. Consumer will then want said high end machine to play said game with all options turned on at more than slideshow rates. Think about when quake3 came out and most people could play the game at it's minimum requirements fairly well, but then you bought new hardware to take advantage of the rest of the special FX. I know I did.

    --
    cheese logs keep my wang warm at night.
  9. Unfortunately by aztektum · · Score: 2, Informative

    That bug remained in the final game I believe. I guess it was suppose to be a "feature".

    --
    :: aztek ::
    No sig for you!!
  10. Re:Don't check architecture! by Frobnicator · · Score: 4, Informative
    Um, no. That's not quite what the article was saying. It mentioned three basic types of techniques, you pointed out ONE of them.

    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:

    1. Use a slow simulation that takes a lot more power, such as Navier Stokes equations. Doing this eliminates much of your target audience.
    2. Use a fast simulation that can run on slower PCs (maybe Perlin noise or Fourier Synthasis). Doing this dramatically reduces the physical realism of the game.
    3. Develop some new system that is both convincing in physical reaction, and easy enough to run on the system problems they describe (not just slow CPU).

    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:

    • bad graphics card
    • accelerated graphics card with no programability
    • Graphics card with 4 major versions of programability, and varying amounts of memory (varying by orders of magnitude)
    • Graphics cards with various levels of programability, but no dedicated memory.

    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

    --
    //TODO: Think of witty sig statement
  11. Full scene anti-aliasing on interlaced displays by tepples · · 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.

  12. Re:Old Hardware... by TexVex · · Score: 2, Informative
    AND, you run your xbox at 640x480 for the most part since this is what your average TV will display.
    The XBOX does HDTV, which is much higher resolution and not interlaced to boot.
    --
    Fun with Anagarams! LADS HOST, SHALT DOS. HAS DOLTS. AD SLOTHS, HATS SOLD. ASS HO, LTD.
  13. Re:Charming by SomeGuyFromCA · · Score: 2, Informative
    First, gamers Want the fastest possible speed on their platforms. They're the people driving the overclocking movement; who buy five grand, tricked out systems, and who also push the gaming industry. They're not going to buy games where there hardware and wideband net connections doesn't matter.


    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 ($10k!))

    It's eminently possible to put together the hardware for a very good gaming box for under a thousand, and an excellent one can be had with $1500-$2000.

    Just as an example:

    • Abit NF7-S off Pricewatch, about $90-100, depending on whether you pay tax.
    • Fry's regularly has an ECS board + Athlon chip (usually in the 2000 - 2400 range) for very good prices - keep the chip and eBay off the board for $35 or so.[0]
    • 2x512 of DDR333, about $100-$120.
    • Radeon 9600XT, $150 or so
    • It seems every week there's a CD-RW for next to nothing after MIR. Let's say $15.
    • Similiarly, it's usually possible to find something like a 160gb 7200RPM harddrive for $100 or so.
    • Not that a gaming box needs a DVD-ROM, but those run about $30.[1]
    • The onboard Soundstorm audio can work just fine, but so can a $50 card like the TBSC.
    • Case with decent 350w PSU, $50 or so.[2]
    • Maybe $150 or so for a good 17" CRT or even a 19" with rebate, if you find a nice one.
    • Allow $75 for misc stuff[3]
    • Throw in a $50 or so set of speakers.


    There, that's about $850. I said "under a thousand" for the hardware, right? That's lots of wiggle room for a second drive or better video card or whatever you feel the need for.

    Now, given that this is a gaming box, and the best OS for gaming on this hardware is Windows, I'm not going to zealot around and scream "Linux! Linux! Linux!" at you, but figure in an extra $200 even for XP Home non-update; Professional is $300. (But just because you run Windows doesn't mean you have to run Office - take a look at OpenOffice.) Add to that an antivirus program (NAV 2004 is $50 or so) and whatever else you consider necessary, and you're looking at about $1100-1200 done. A far far cry from $5000.

    And as a final point, I get plenty of games where my broadband connection doesn't matter. Some people still play singleplayer / offline games, and when I play MP, it's usually LAN.

    [0] The last one I saw was 2600 & board for $90.
    [1] Hell, a combo DVD-ROM/CD-RW runs about $60, if you have a minitower case.
    [2] Do not skimp on the case. Cheap ones both cut corners (I did a build the other week where the motherboard just barely fit in past the optidrives - there was less than a cm of room. $15 case, I should have known.) and have corners that cut. (/me shows off scars on hands from cheap cases)
    [3] Case fans, good cpuhsf, floppy drive if you want it, mouse, keyboard, etc.
    --
    if the answer isn't violence, neither is your silence / freedom of expression doesn't make it alright