Slashdot Mirror


Doom 3 Programmer on OGG, Ultra, 60FPS Play

Cryect writes "Appears that Doom 3 is making use of Ogg Vorbis to reduce memory usage for sounds. This comes from id programmer Robert Duffy's latest plan update where he says: 'When we started on memory optimization, most levels used between 80 and 100 megabytes of sound data. We made the choice to move to .OGG for quite a few sounds which effectively removed the problem for us.'" Duffy also comments on texture usage in 'Ultra' mode ("In Ultra quality, we load each texture; diffuse, specular, normal map at full resolution with no compression. In a typical DOOM 3 level, this can hover around a whopping 500MB of texture data") and framerate ("The game is capped at 60fps for normal game play. For render demos, like what was used for the HardOCP stuff, we run those at full tilt which is why you will see 60fps.")

66 comments

  1. Cool by I_Love_Pocky! · · Score: 3, Interesting

    Does anyone know of any other high profile games using Ogg?

    1. Re:Cool by Senjutsu · · Score: 4, Informative

      The Unreal Tournaments, I believe.

    2. Re:Cool by MC+Negro · · Score: 5, Informative

      The Unreal Tournaments, I believe.
      You would be correct.

      From Vorbis website --
      I'm a developer. Why should I be interested?

      Epic Games (the makers of Unreal Tournament, et. al.) have used Vorbis in their games ever since releasing Unreal Tournament 2003 to compress game music without having per-game license fees sap profits from every game sold. Vorbis saves developers money by avoiding patent-license fees.

      Epic isn't alone; other Vorbis users include:

      * Crystal Dynamics (Soul Reaver 2, Blood Omen 2)
      * Croteam (Serious Sam: The Second Encounter)
      * Pyrogon (Candy Cruncher)
      * PopCap Games (Alchemy)
      * EA Games (Harry Potter and the Chamber of Secrets)
      --
      "You and your third dimension."
    3. Re:Cool by pio!pio! · · Score: 1

      Doesn't Far Cry use Ogg as well?

    4. Re:Cool by Anonymous Coward · · Score: 0

      IIRC, the Mac version of Halo used Ogg.

    5. Re:Cool by irc.goatse.cx+troll · · Score: 1

      Windows version of Halo does too, just check out c:\Program Files\microsoft games\halo\xiph_license.txt

      --
      Pain lasts, kid. Its how you know you're alive. Sometimes I think this growing up thing is just pain management-TheMaxx
    6. Re:Cool by Fweeky · · Score: 1

      Not quite "high profile", but Starshatter uses Oggs.

      More interesting I think is the number of games using Python, lua and other open source languages for scripting.

    7. Re:Cool by Lehk228 · · Score: 1

      sweet, so not only did i get awesome games (2k3 and 2k4) i was supporting the use of Open source software without even knowing it.... though i should have guessed since Epic has been cool about alot of stuff (remove CD check in game patch a few months after release on both 2k3 and 2k4) and of course the great custom mutator interface

      --
      Snowden and Manning are heroes.
    8. Re:Cool by Kyouryuu · · Score: 2, Interesting

      What's also remarkable is when you check out the size of some of Unreal Tournament 2003/2004's OGG files. Some are scarcely larger than a meg, but hold over 3 minutes of CD-quality music.

    9. Re:Cool by Anonymous Coward · · Score: 0

      That file doesn't exist on my machine.

    10. Re:Cool by Tofino · · Score: 1

      City of Heroes also uses ogg. The sounds folder contains .piggs, which are expandable into oggs. A thread (which can be found here) on the official City of Heroes boards discusses various methods of messing with these for the non-ogg-aware. Most welcome is the ability to get rid of the Targetting Drone and Forcefield sounds.

  2. Wouldn't this add to the processor usage? by bergeron76 · · Score: 2, Interesting

    If I'm not mistaken, doesn't this just shift the burden to the processor by adding more decoding time to it in exchange for memory savings?

    --
    Don't think that a small group of dedicated individuals can't change the world. It's the only thing that ever has.
    1. Re:Wouldn't this add to the processor usage? by Anonymous Coward · · Score: 1, Insightful

      Absolutely. But Doom 3 isn't too CPU-intensive, not compared to what it demands from your video card.

    2. Re:Wouldn't this add to the processor usage? by AuMatar · · Score: 4, Insightful

      Note the 500 MB of memory for textures. They need memory badly. Bumping the CPU speed slightly probably makes for better minimum specs tan going over 500MB of ram.

      --
      I still have more fans than freaks. WTF is wrong with you people?
    3. Re:Wouldn't this add to the processor usage? by Anonymous Coward · · Score: 1, Insightful

      Why is this insightful? It's 500MB of video card RAM, in the Ultra(-high quality) graphics quality setting.

    4. Re:Wouldn't this add to the processor usage? by Anonymous Coward · · Score: 1, Informative

      Yes, but not enough to be noticable. Compressing the various media files in games has been common for quite a while. In some cases it's actually faster to get a compressed file out of RAM and decompress it to work on it than it is to move the big, uncompressed file in and out of RAM, simply due to the relatively huge bottlenecks in RAM and hard disk transfer speeds. An extra couple million cycles is easier to come by than an extra 100 MBps.

    5. Re:Wouldn't this add to the processor usage? by oskillator · · Score: 3, Informative
      If I'm not mistaken, doesn't this just shift the burden to the processor by adding more decoding time to it in exchange for memory savings?

      You are correct. Shifting the burden from a resource that can't handle a load to a resource that can is a big part of optimization

    6. Re:Wouldn't this add to the processor usage? by HFXPro · · Score: 2, Informative

      With processors being as fast as they are now, it is actually more adventageous to do extra processing on the processor then to have to fetch stuff from RAM. I don't know about sound, but I know in graphics rendering sometimes you will go for an effect that requires more processing time if it will save you from having to access memory. At one time it was the other way around, you didn't care how large the data was in memory (within limit of course) so long as it was simpler and easier to process.

      --
      Reserved Word.
    7. Re:Wouldn't this add to the processor usage? by S.+Traaken · · Score: 2, Interesting

      Interestingly, it still works both ways :) For example, BSP trees aren't a particularly space efficient way to store level maps, but they make drawing them (or at least culling parts of them) much faster.

    8. Re:Wouldn't this add to the processor usage? by AuMatar · · Score: 1

      And do you know of any card on the market with that much video ram? Most peoplel have 64, some up to 256. I don't even know a card with 512. The overflow spills into main memory.

      --
      I still have more fans than freaks. WTF is wrong with you people?
    9. Re:Wouldn't this add to the processor usage? by KDR_11k · · Score: 1

      You won't want to play with a setting more detailed than your card memory can handle. Do you know what constantly fetching pretty large textures over the AGP does to your framerate?

      --
      Justice is the sheep getting arrested while an impartial judge declares the vote void.
    10. Re:Wouldn't this add to the processor usage? by Anonymous Coward · · Score: 0

      Yes, I do

      You can ONLY play Ultra mode on a 512MB card.

    11. Re:Wouldn't this add to the processor usage? by Trejkaz · · Score: 1

      I'm hoping that Creative answer this by putting the decoding in hardware like they claim to have for MP3. ;-)

      --
      Karma: It's all a bunch of tree-huggin' hippy crap!
  3. Nitpicking by Oliver+Lineham · · Score: 1, Informative
    OGG? What is OGG? I think these people mean Ogg. The developers themselves have decreed this, so give them a little respect.

    And how could Ogg possibly improve the size of their sounds? Ogg is a container format. I think they mean Vorbis, the compression codec.

    I know I'm being anal retentive. I don't care.

    --
    -- mind over pixel
    1. Re:Nitpicking by Anonymous Coward · · Score: 0

      RTFH (read the fucking headline). They state that it's Ogg Vorbis.

    2. Re:Nitpicking by Anonymous Coward · · Score: 0

      Here is the headline: "Doom 3 Programmer on OGG, Ultra, 60FPS Play". You said "RTFH [..] They state that it's Ogg Vorbis."

      Umm..

  4. Ogg is great for gaming by BillyBlaze · · Score: 5, Informative

    The Vorbis format really is a godsend for gamers, because in the game programming world, the roadblocks which otherwise hinder it are gone. For one, the no license fee argument becomes applicable - Vorbis doesn't help portable player makers much, because they have to support MP3 and WMA anyway. But since the consumer doesn't care what format game audio is in, programmers can go for a cheap (BSD licensed), easy (good APIs), and very good (high quality) solution without worrying about making the game less useful. Many games already use Ogg Vorbis, like UT2003/4 - here's a complete list. (Well, it would be there, if the Wiki was up.)

    1. Re:Ogg is great for gaming by 222 · · Score: 1

      Just thought id add that City of Heroes and Lineage 2 both make use of it, and while i dont play CoH, the audio in Lineage 2 is just short of breathtaking.

    2. Re:Ogg is great for gaming by KDR_11k · · Score: 1

      Considering that Lineage II is based on the Unreal Engine 2 that comes to no surprise. I have a feeling that other UE2 games use the format, too.

      --
      Justice is the sheep getting arrested while an impartial judge declares the vote void.
  5. Here's a Related Question by Ieshan · · Score: 4, Interesting

    Here's the question: Why don't game developers take care to run the game on a certain number of de-optimized systems and then release demos with those configurations as well?

    I mean, I think it would be nice to see exactly what the game looks like on the Min specs, and if recent games have proven anything, it ought to look incredible.

    I ran the UT2004 demo at what must have been hovering near the recommended mark (practically all the special spiffies were turned off), and the graphics still blew me away.

    If anything, this might convince me to buy the game or to upgrade hardware to "release" level, and it would also give people a *real* taste of what the game will look like.

    1. Re:Here's a Related Question by Anonymous Coward · · Score: 1, Insightful

      Yeah, I'd like to see this too. We've all seen screenshots of the high and/or ultra quality settings, and benchmarks for the latest ultra-expensive, bleeding edge systems. How about some info on what it'll look like on the systems us mortals have? Beyond the words "it'll look good and be playable", I mean.

    2. Re:Here's a Related Question by 88NoSoup4U88 · · Score: 3, Insightful
      I think it would cause too much confusion : When people are blurring over reviews on sites : they don't tend to read all of the article, but skim over the screenies.

      Other than that, i think, as a developer, you would want the presentation of your product to be shown at its best. I do get your point, but I think demo's do quite a good , ifnot better job at determining if your rig is going to pull the game.

    3. Re:Here's a Related Question by ildon · · Score: 1

      If you read the recent HardOCP article instead of just looking at the bench marks you'd see they do plan on making a "Doom3 hardware guide" in which they will (presumably) benchmark the game on a variety of available hardware.

    4. Re:Here's a Related Question by Anonymous Coward · · Score: 0

      All of these bigname games are now "sponsored" by Nvidia or ATI. So, of course, the developer is going to use the game to push new hardware.

    5. Re:Here's a Related Question by Cryect · · Score: 1

      Well check out here for all the different hardware Kyle has said they have tested it out on and they are currently in the process of writing it all up.

    6. Re:Here's a Related Question by fuzzybunny · · Score: 1

      This is what I found pretty cool about Ubi Soft's IL-2. It runs decently on not-so-super-duper-optimized gaming boxes with nice graphics in multiplayer.

      We've wondered whether the Russian coders super-duper trimmed down their code because they didn't have access to as high end workstations as a lot of western gamers.

      --
      Cole's Law: Thinly sliced cabbage
  6. What hardware? by Anonymous Coward · · Score: 0

    Anyone know what specs are needed to run the game at full settings and 60 FPS?

    1. Re:What hardware? by TheLoneDanger · · Score: 2, Funny

      By asking for specs, you imply that there is some sort of limit to the lengths you are willing to go to obtain 60 fps at full settings. This is simply unacceptable!

      Frame Rate before food!

      --

      "But I trust in the people's capacity for reflection, rage and rebellion." -Oscar Olivera
    2. Re:What hardware? by Anonymous Coward · · Score: 0

      You might want to say what resolution you want. High quality at 60FPS should be possible for a Radeon 9600, if you're running at 320x240. Ultra quality at 60FPS at 1600x1200 with all the FSAA and AF stuff on isn't going to happen on anything available now, no matter how much money you're willing to throw away. Hell, if you bother to read any of the articles that've been released these past few days, you'd know that the "ultra" mode requires a 512MB video card, which to my knowledge aren't even available yet, and probably won't be down to a reasonable price for another year.

    3. Re:What hardware? by Propagandhi · · Score: 1

      The "ultra" setting is not officially supported by video cards with less than 512 mb's of video memory. In other words, there are no available GPU's that could run the game at "full settings" (aside from a few workstation GPU's).

    4. Re:What hardware? by KDR_11k · · Score: 2, Informative

      I read a review in a magazine that listed an Alienware with a P4 3.0GHz, 1GB RAM DDR400 and a Geforce 6800GT, which ran the game at 1600x1200 with high details (that's one notch below ultra, only difference being the usage of compressed textures, so it's full settings if you don't count texture compression) at 40-60FPS. They didn't say anything about AA or AF settings.

      --
      Justice is the sheep getting arrested while an impartial judge declares the vote void.
  7. Container format = Stupid by Anonymous Coward · · Score: 1, Insightful

    I hope Ogg isn't going to be the extension for both audio and video then. Because right now you can tell if a file is a sound file or a video file just by looking at it. It would be really stupid if people started distributing MOV files that were just sound encoded in a format that is the same as something that could be stored in a wav.

    1. Re:Container format = Stupid by ildon · · Score: 1

      It already is being used for video. Look for the extension "ogm"

    2. Re:Container format = Stupid by Anonymous Coward · · Score: 0

      Yeah, that would be stupid.
      There's no need any more for three-letter extensions.
      One could easily use, for example, .oggv for Ogg Vorbis, and .oggt for Ogg Theora.

    3. Re:Container format = Stupid by 13Echo · · Score: 2, Informative

      MOV is a container. It "contains" the metadata for the codecs (in addition to other information) and also contains the audio and video streams. It's possible to have a MOV file with only audio. Ogg is also a container. The audio in the Ogg file is called Vorbis. OGG containers can include video as well, which will most commonly be Theora based (off of the VP3 format) in addition to the Vorbis audio. OGM files are also containers, that typically have Divx video and Vorbis for audio (instead of the norm of MP3 for the audio portion).

      WAV should not be classified as the same sort of thing. It is not a container. it is not compressed. It's essentially a (slightly modified) raw PCM bitstream.

    4. Re:Container format = Stupid by Neillparatzo · · Score: 1

      No, actually, WAV is a container. WAV files can contain ADPCM or even MP3 compressed streams. See "compression code" under http://www.sonicspot.com/guide/wavefiles.html

  8. 128MB Sound card anyone? by Kris_J · · Score: 1

    Sounds like a sound card with 128MB of RAM and an Ogg Vorbis decoder would help with resource management significantly. Anything like this out there or on the horizon?

  9. More benchmarks please by Lisandro · · Score: 1

    I'm still eager for D3 benchmarks on low and mid-end systems. Anyone knows of any? I'd love to know if it'll be playable on my FX5200.

    1. Re:More benchmarks please by WasterDave · · Score: 1

      Kyle dropped a comment on the HardOCP forums that he has 2.3GB of data and will be doing a more substantial article later this week. I imagine he has mid-end stuff in droves.

      Dave

      --
      I write a blog now, you should be afraid.
  10. SLI? by servognome · · Score: 1

    Would SLI of (2)256MB GPUs be sufficient to meet the 512MB requirement?
    I don't know alot about how the memory is handled in an SLI setup. Can the cards access each others memory?
    Just curious since I'm sure there will be the uber d00dz who would be willing to spend 1k to run at maximum c00lness

    --
    D6 63 0D 70 89 81 BB 8E 7B 7C 5F 5D 54 EA AB 73
    1. Re:SLI? by idiot900 · · Score: 3, Insightful

      Would SLI of (2)256MB GPUs be sufficient to meet the 512MB requirement?

      I'm no graphics programmer, but I'd suspect that no, it wouldn't, because both GPUs would be rendering the same scene, and thus both would need the same textures (and whatever other kinds of maps).

      Well, if one GPU renders the top half of the frame and the other the bottom, you might be able to buy a little bit of savings (think floor vs ceiling textures). But I don't expect that to have too much effect.

    2. Re:SLI? by Pyromage · · Score: 2, Informative

      The best example is probably in the old Voodoo2 SLI setup, because it had partitioned memory. The texture memory had the same contents on both cards; what was duplicated was the frame buffer. Back then, the frame buffer was big. Since it's more textures now, SLI probably won't do much, if anything. It could conceivably make it worse, due to overhead. I doubt that last, though.

    3. Re:SLI? by CharonIDRONES · · Score: 1

      Well, obviously you're not down with the computer scene either apparently :) Just playin', but seriously though.

      It would have a gigantic effect, a x1.86 to sometimes almost x2 effect! Haha, just read the fuckin' article right here from Tom's Hardware covering nVidia's new ideas on SLI.

      http://graphics.tomshardware.com/graphic/2004062 8/index.html

    4. Re:SLI? by Toraz+Chryx · · Score: 1

      That affect is extra fillrate+pixel shader throughput, in a texture memory limited situation, it'd perform the same as a single card.

  11. More Related Questions by Anonymous Coward · · Score: 2, Insightful

    I ran the UT2004 demo at what must have been hovering near the recommended mark (practically all the special spiffies were turned off), and the graphics still blew me away.


    This is completley true for me as well. I almost felt like I was getting something for free.

    Questions...

    Is it just me or are the developers of UT2004 not getting enough critical and community thanks for making a game that runs so well on crappy systems? I could be totally wrong, but it doesn't seem like they are. Methinks it's just easier for some folks to complain when it *doesn't* work ;)

    Next-gen games that run well (or in the case of UT2k4, excellent) on low to mid-range systems would be a welcome paradigm shift and would go a long way to extend the lifespan and relevance of PC gaming. Was that a specific goal of UT2K4's desiginers? If so, how hard is it to implement?

    It *seems* like programming for next gen games would be harder for the bleeding edge systems because alot of assumptions about the hardware and drivers have to be made at the very beginning....wheras the crappy hardware in my computer is available for your perusal RIGHT NOW!

    Someone enlighten me?

    1. Re:More Related Questions by GeckoX · · Score: 1

      I have to agree with you, but I'm not convinced that digital extremes has done this by design, or at least that is a somewhat new mentality for them. Remember when Unreal came out? That game sold a LOT of first-gen 3D cards, because it NEEDED IT. It was a beast of a game in all ways at the time, really required bleeding edge hardware.

      Remember when Halflife came out shortly thereafter?
      It really doesn't get the credit it deserves in this area, totally playable fps that didn't look half bad - in software mode!

      Back to Digital Extremes though, I feel too that they're making the right decisions in this area. Make the core game work, and work well, on standard hardware. THEN add optional eye candy out the wazoo. I never play Quake3 anymore, but I still play all sorts of UT(varions flavours). I was quite pissed when Quake3 came out, requiring even beefier hardware than the beta had for chrissakes, and what did it add to the game? Personal opinion totally, but f*^# all as far as I'm concerned. All those extra hardware requirements so you could play the same game as always, but looking like a cartoon.

      Something to be learned here, some will, and some won't.

      --
      No Comment.
    2. Re:More Related Questions by SuiteSisterMary · · Score: 1

      Don't shortchange Unreal's software mode; it was one of the first games to really make use of that new-fangled MMX crap, and on a fast enough processor, it looked better than the 3dfx mode, as it was 32 bit colour, not 16 bit.

      --
      Vintage computer games and RPG books available. Email me if you're interested.
    3. Re:More Related Questions by nadadogg · · Score: 1

      Dude, I think you missed the boat there. Half-life got all kinds of credit for being playable, you dont sell a shitload of copies by being uber-extreme.

      --
      i use linux and windows oh god how can i have an opinion
  12. Capped at 60 fps by zz99 · · Score: 3, Informative

    "The game is capped at 60fps for normal game play. For render demos, like what was used for the HardOCP stuff, we run those at full tilt which is why you will see 60fps."

    This quote made no sense to me until I did RTFA, and realized that it was faulty. What really was written in the article was:
    "...which is why you will see > 60fps."

  13. 500Mb will be enough? by ciupman · · Score: 1

    500 MB???? EHEH .. i still remember when i bought 2 extra Mb for my 386@25Mhz so i could just play Doom1 in protected mode, in a small window ;) ...

    --
    I fuse with Mercer every single day...
  14. Re:Operation Flashpoint uses OGG by datalife · · Score: 1

    The best tacticshooter ever
    Operation Flashpoint
    uses ogg for all sound effects.

    Eagerly waiting for OPF2 coming out.

    --
    There are only 10 types of people in the world: Those who understand binary and those who don't.
  15. Troll, countertroll by Trejkaz · · Score: 1

    Cool, is this ASF file I have here audio, or a video? Because apparently you can tell "just by looking at it." Never mind that nobody else can. :-)

    The truth is, file extensions mean DICK in the grand scheme of things. Operating systems should choose more intelligent ways to distinguish filetypes... it doesn't matter if you use metadata or a program like file(1), either option are better than using file extensions to leap to conclusions.

    And anyway, both audio and video open using the same application, so who cares? ;-)

    --
    Karma: It's all a bunch of tree-huggin' hippy crap!
  16. What about AGP? by Trejkaz · · Score: 1

    Couldn't you use a massive amount of RAM, and a fat AGP (or PCI-E, for that matter) interface, to deal with the 500MB of textures? That's how other applications used to do it, before the huge amounts of video RAM showed up. Actually, I recall something about that being the entire point of AGP.

    --
    Karma: It's all a bunch of tree-huggin' hippy crap!
    1. Re:What about AGP? by minasoko · · Score: 1

      I think, for something like Doom 3, the answer is no. Cards such as the nVidia 6800 Ultra have about 35GB/s bandwidth internally (from its own memory to GPU). AGP 8x provides 2GB/s bandwidth to your system memory and PCI-Express x16 can achieve 14GB/s. Besides, if you're going to buy enough RAM and a new PCI-Express motherboard, you may as well upgrade to a 512MB graphics adapter.

    2. Re:What about AGP? by Trejkaz · · Score: 1

      I don't know about that. Are 512MB adapters even out? The 256MB versions already cost too much money, and buying more RAM and a new motherboard would take even more money out of your pocket, which would then all be unavailable for upgrading the graphics adapter. :-)

      --
      Karma: It's all a bunch of tree-huggin' hippy crap!
    3. Re:What about AGP? by minasoko · · Score: 1
      OK, I phrased that badly. What I mean is, if you're going to spend money on buying enough RAM and a motherboard to do what you suggested in your first post, and getting average performance, then you may as well just spend it on a 512MB card instead.

      Are 512MB adapters even out?

      They will be shortly. nVidia and ATI are due to release 512MB versions of their top line cards. Yes, they are expensive, but who said playing Doom 3 properly was going to be cheap? Using PCI-Express to allocate system memory as video memory would be roughly equal to playing Doom 3 on a 512MB radeon 9600 or a 512MB FX5600. Theoretically, of course.