Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
First Person Shooters (Games) PC Games (Games) Entertainment Games

Valve Defuses NVidia Half-Life 2 Issues 21

suineg writes "Gabe Newell, Valve's main man, has commented on Half-Life 2 and anti-aliasing problems with DX9 cards over at HalfLife2.net: '[The current problems] ...will look like a bright or dark line on the edge of a polygon. This is not a new problem. Artifacts may show up more frequently in Half-Life 2 simply because we've eliminated lots of other artifacts, and because we have a lot of variation in scene lighting due to our art direction.'" As far as solutions go, Newell has some: "ATI has supported... [the centroid work-around] form of anti-aliasing for the 9000 series... [as for] NVIDIA's [hardware], that doesn't support centroid sampling... you trade off some pixel shader bandwidth to clamp the texture coordinates."
This discussion has been archived. No new comments can be posted.

Valve Defuses NVidia Half-Life 2 Issues

Comments Filter:
  • Trade-offs (Score:3, Insightful)

    by JonoPlop ( 626887 ) <.me. .at. .JonathonMah.com.> on Thursday July 24, 2003 @07:13AM (#6519830) Homepage
    Artifacts may show up more frequently in Half-Life 2 simply because we've eliminated lots of other artifacts


    What? Apart from not making much sense, is this implying that new artifacts are being traded for a lot of older ones? (i.e. get rid of lots of old ones, but by doing that, introduced some more in the process)
    • Re:Trade-offs (Score:5, Insightful)

      by samael ( 12612 ) <Andrew@Ducker.org.uk> on Thursday July 24, 2003 @07:27AM (#6519866) Homepage
      Nope, it means that things that previously would have faded into the general 'unrealism' that pervades computer games stand out more and more when the other problems aren't there along with them.

      Look at (for instance) Quake3. Point out a couple of problems with the graphics. Now look at Quake. The problems that FF has are almost certainly there too, but you won't notice them because other problems are far more glaring.
    • Re:Trade-offs (Score:4, Informative)

      by Zardoz44 ( 687730 ) on Thursday July 24, 2003 @07:29AM (#6519873) Homepage
      It will look like a bright or dark line on the edge of a polygon.
      This is all a guess, but if you make the graphics look sharper by removing some of the other problems, you might have more cases where these lines become more noticable. You take out the big glaring obvious artifacts and you can see these subtle problems more frequently. Makes sense.

      Does "Can't see the forest for the trees" apply here?

  • by Sesse ( 5616 ) * <(sgunderson) (at) (bigfoot.com)> on Thursday July 24, 2003 @08:44AM (#6520174) Homepage

    Now, would somebody please explain what this "centroid" workaround is all about? Ie. technically, what does it do? :-)

    /* Steinar */

    • by PainKilleR-CE ( 597083 ) on Thursday July 24, 2003 @09:25AM (#6520455)
      Centroid antialiasing takes the average of the sampled pixels and applies it to the entire sampled area (or, in most cases, just the edges of the area, as centroid antialiasing does not look good over a large surface, but can smooth out problem cases like the edges of polygons). This will make some situations look better, and some look worse (the example in the white paper I read mentions that as two objects move towards the camera the colour may 'snap' from one to the other, although it's still only in the edge cases that Valve is discussing).

      Basically, it's an algorithm used to reduce the memory (and memory bandwidth) requirements of high-sample anti-aliasing techniques (for example 4x FSAA, which at say 1280x1024@32bpp would require ~160MB of RAM and/or slow rendering 16x). Algorithms that work for high accuracy without the slow-downs of full antialiasing will use centroid algorithms in combination with a number of other algorithmic shortcuts which, when combined, can produce nearly the same image, though with more artifacts and problem cases.
  • Parhelia 16X (Score:2, Interesting)

    by Kamalot ( 674654 )
    How will Half-Life run on cards like the Matrox Parhelia and its 16x anti-aliasing? I believe it is a Direct X 8 card.
    • Does that card still even exist? With it's poor performance ratings I thought it was DOA....to bad for Matrox they used to own the 2D video card market many years ago.
  • by Tom7 ( 102298 ) on Thursday July 24, 2003 @01:01PM (#6523152) Homepage Journal
    Based on my understanding of 3D rendering, I don't see how this can happen.

    I thought that FSAA worked by one of two methods:

    - Render the entire screen at a higher resolution (double width and height, for instance), and then downsample it to the screen resolution

    - Render the same scene at screen resolution several times from slightly (sub-pixel) different locations, then mix the images together

    Either way, I don't see how texture coordinates would be disturbed such that parts of other textures show through at boundaries. Can someone with an understanding of modern graphics hardware clue me in?
    • They cheat on the FSAA. What they do is they don't actually sample the entire screen, they basically just run AA on the textures when they are rendered, then anti-alias the edges as they are rendered. Although technically what you said is true, if you think about it, its fairly unfeasable to say, render it at double resolution (say 3200x2400), then render that down into 1 1600x1200 screen. The memory requirements alone are massive. 1 24 bit 1600x1200 screen is 5.76 megs of video memory as it is, so one
      • by Tom7 ( 102298 )
        Well, I think the idea is that (a) you'd be able to do that on the card, so you wouldn't need to move it to main memory, and (b), you do not need to literally render the whole screen and then shrink it; you can just do 2x2 pixel or 4x4 pixel blocks and then combine those to get each pixel. The intermediate data does not need to stick around.

        > What they do is they don't actually sample the entire screen, they basically just run AA on the textures when they are
        > rendered, then anti-alias the edges as t
        • "With current multi-sample implementations of anti-aliasing, you may sample texels outside of the polygon boundary ..."

          This is the key, but you have to understand what a centroid is in the first place. A centroid is a the geometric place the triangle (In 3d graphics "polygon" means "triangle in space") defined by the intersection of the lines that go from every corner to the midpoint of the oposite edge. One of its properties (the most relevant for this particular application) is that is allways inside

          • "With current multi-sample implementations of anti-aliasing, you may sample texels outside of the polygon boundary ..."

            I understand what they say is happening, but I don't understand *why* an implementation of anti-aliasing would sample outside the polygon boundaries. What does the implementation do that causes this?
  • Can't the antialiasing simply be switched off when rendering the translucent polygons and kept for opaque? Worked fine on N64 but that didn't have hardware multipass rendering and such so maybe it's not that simple..
    • by Merlin42 ( 148225 ) * on Thursday July 24, 2003 @02:24PM (#6524182)
      Uhh ?!?!?! Who said anything about tranlucency?

      This has to do with the interaction b/w the programmer doing things 'behind the back' of the driver (ie packing multiple logical textures into one texture as far as the driver/card is concerned) and the driver/card doing things 'behind the back' of the programmer (ie multisample antialiassing in such a way that texture cooordinates may fall slightly outside the range the programmer specified).
  • This is the same problem that systems programmers have been grappling with for ages-- how much optimization does the system provide in libraries or drivers, and how much does the application developer have to bring to the table. However, in this case, the graphics drivers have to be optimized a heck of a lot in order for people to eek out those last 5-10 frames per second to beat the competitor's product on benchmarks. So then you have hacks happening not only on the side of the drivers/system and hardware

HELP!!!! I'm being held prisoner in /usr/games/lib!

Working...