Xbox LIVE Indie Games
Sort Discussions: Previous Discussion Next Discussion
Page 1 of 2 (46 posts) 1 2 Next >

How to make sure your graphics card is XNA ready

Last post 2/7/2011 9:41 PM by Return To Adventure Mountain. 45 replies.
  • 3/27/2007 8:46 AM

    How to make sure your graphics card is XNA ready

    XNA Game Studio (Express) 1.0, 1.0 Refresh and 2.0 require a DirectX 9 graphics card capable of Shader Model 1.1. In addition many of the creators club samples and starter kits will require a Shader Model 2.0 capable card.

    XNA Wiki has a list of cards that work and do not work.

    If your card is not on that list then there are many places to check the capabilities of your card:

    http://en.wikipedia.org/wiki/Comparison_of_ATI_Graphics_Processing_Units
    http://en.wikipedia.org/wiki/Comparison_of_NVIDIA_Graphics_Processing_Units

    http://en.wikipedia.org/wiki/Pixel_shader

    Make sure the card supports at least DirectX 9 and shader model 1.1. If your card isn't on the list, chances are you need to get a new one, but a quick Google should be able to verify this.

    If you are prepared to run a 3rd party application (Microsoft does NOT recommend or verify the safety of this application) then someone has written an application to check several things including card compatibility. XNA Requirements checker.

  • 11/26/2008 1:16 AM In reply to

    Re: How to make sure your graphics card is XNA ready

    Ok can you give information on how to find out if your graphic card is up-to-date cuz i have no idea what graphic card im using

    Is this going to be a problem such as running game or loading it to the Windows or x-box 360 games?
  • 11/26/2008 7:15 AM In reply to

    Re: How to make sure your graphics card is XNA ready

    Open the Run... menu item from the start menu.
    Type in "DXDIAG" for the program to run.
    Click the Display tab. This will show you the name and type of your graphics card, from which you can tell what kind of support it has.
    It doesn't, unfortunately, tell you the best supported pixel shader format -- you really want at least ps 2.0 for XNA 3.0 these days.
    The card can expose a "DDI version" though, which is visible. If this is 10, then you're good -- DX10 is supported. If this is 9, you're 99% good. If this is 8, you're likely not good.
    Similarly, if the manufacturer of your graphics card is "NVIDIA" or "ATI" or "AMD," chances are that you're good. If it's "Intel" then you're probably good if you bought your computer in the last 2 years, and chances fall off earlier than that.

    Example Intels that are good:
    Intel GMA 950
    Intel X3000
    Intel X4100
    Intel 4500HD

    And when I say "good" I mean "it will work, if you install the latest available graphics driver." Performance of all Intel parts so far is pretty sluggish, and performance among the NVIDIA and ATI/AMD parts varies greatly from the integrated/express parts (slowish) to the extreme high-end parts (fast!).

    The problem with really poor graphics cards is that the DirectX pieces needed to just prepare the assets for the Xbox may prevent the tools from running.
  • 12/1/2008 6:37 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    Let say if we did do the "Dxdiag" and it doesn't say that has pixel shader does that mean it not showing or just simply does not contain a pixal shader and we newly  creator need an upgrade version?
  • 12/1/2008 7:36 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    DXDiag only tells you what the name of the card is; it doesn't tell you what pixel shader support it has. However, googling for the name of your card (or checking it out on Wikipedia) is likely to tell you what you need to know.
    You can also use the DxCapsViewer from the DirectX SDK (a 500 MB download...), which will tell you what pixel and vertex shader versions are supported.
  • 1/10/2009 4:34 AM In reply to

    Re: How to make sure your graphics card is XNA ready

    mine say DDI version 9Ex
    and the name is Nvidia GeForce 6150sE nForce 430.
    is it good to use this program?
  • 1/10/2009 6:20 AM In reply to

    Re: How to make sure your graphics card is XNA ready

    skizoo:
    mine say DDI version 9Ex
    and the name is Nvidia GeForce 6150sE nForce 430.
    is it good to use this program?
    Yes. However, it's a slow card in terms of shader performance.
  • 1/11/2009 12:52 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    My card is the Nvidia 8600M GT, and it supports shader 4.0, so that would not be a problem i'll guess.
  • 1/14/2009 2:15 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    jwatte:
    DXDiag only tells you what the name of the card is; it doesn't tell you what pixel shader support it has.


    That should be something that MS should add to the Windows 7 Dxdiag...
  • 3/25/2009 8:45 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    It's always a good idea to go to the manufacturer of you card's website and search for your card on their website for example , my graphics card is an nvidia 7100 GS so I go to nvidia (my manufacturer) and type in the nearest searchbox nvidia 7100 GS I found a text file that tells me all about my graphics card like the clock speed , vertex (pixel) shader etc.

    If you don't know what your card is then try dxdiag ie click start , run then type in "dxdiag". The screen that comes up can be saved but most of the information is not needed so save the info and cut out the pieces you dont need , display only the system information and Display information possibly direct x information.

    If you don't want to do that you can always juct go to the display tab at the top of the page and the information shown should give you a good idea of what your card is in the device panel. If the card is not one from Nvidia or ATI then you can almost be sure that the GPU is not worthy of XNA.

    Remember that google is a wonderful thing. Use it.

    Hope that helps.
  • 4/16/2009 3:00 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    Corollary is: "How to make sure your graphics card is Xbox 360 ready"

    What I mean is: you should ensure the fill rate & bandwidth can keep up (at least somewhat) with the Xbox 360.  I just bought a rather cheap quad-core machine from Dell and upgraded the graphics to make sure it was up to par, and to my dismay (due to lack of research) I found it was about 1/3rd the speed of the Xbox's GPU; it was even slower than my old Dell XPS system from 2 or 3 years ago!  I just assumed any rather expensive graphics card of today would be much faster.  <sigh>  Because my game pushes the fill rate to near limit (another thing I didn't know until just now) it means this slows the game down enough that this new PC is unusable for testing or recording videos.  As soon as the enemies start to explode, the explosion sprites halve the frame rate.

    So, Fillrate and bandwidth matter.

    ------------------------

    My new ATI HD 3450:
    Fill rate = 2.4 GTexels/sec, 2.4 GPixels/sec, 1.2 FP32 GPixel/s
    Bandwidth max = 8 GB/s

    Xbox 360:
    Pixel Fill Rate = 16 gigasamples/s using 4x MSAA
    Memory Bandwidth = 22.4 GB/s memory interface bus bandwidth, 256 GB/s memory bandwidth to EDRAM, 21.6 GB/s front-side bus

  • 4/16/2009 8:11 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    The "4" part of the 3450 tells you that it's a low-end part. There's no way that card could have been "expensive" -- those cards sell for like $35. If you have a four-digit card number, you want the third digit from the end to be an "8" or "9" to get a bus that's 256 bits or wider, for 30 GB/s or more of framebuffer throughput.

    There is, unfortunately, no graphics card that perfectly matches the Xbox. The Xbox has really, really good fill rate, but only average pixel shader rate, and kind-of poky vertex shader rate. Also, it's not very good at texture reads, because the 21 GB/s of memory throughput is shared with framebuffer scan-out (display) and the CPU itself. You will likely be limited by texture read performance, rather than framebuffer fill performance, on the Xbox.

    Good cards that ought to match the Xbox a little better without costing $600 like the high-end cards include the GeForce 9800 variants ($115), and the Radeon HD 4850 variants ($130). Note that those cards will probably outperform the Xbox in vertex transform, texture read, and pixel shading, but under-perform in fill rate. Also, the Xbox has miserable CPU performance when running under the XNA Compact CLR, so that's something you'll have to compensate for, too.

  • 4/16/2009 9:12 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    jwatte, you definitely know your hardware.  I'll have to look at my order and find out what happened, since I was under the impression that I upgraded to a reasonably expensive graphics card (at +$100 to the cost over the original); not some $33 piece of junk.  Thanks for the information and suggestions.
  • 4/17/2009 1:09 AM In reply to

    Re: How to make sure your graphics card is XNA ready

    jwatte:
    The "4" part of the 3450 tells you that it's a low-end part. There's no way that card could have been "expensive" -- those cards sell for like $35. If you have a four-digit card number, you want the third digit from the end to be an "8" or "9" to get a bus that's 256 bits or wider, for 30 GB/s or more of framebuffer throughput.


    I am the one to blame for the shabby graphics cards in the Xona Games' systems.  The upgrade from the quad-core Dell Inspiron's default Integrated Intel Graphics Media Accelerator 3100 to the ATI Radeon HD 3450 256MB supporting HDMI was about $60 (CAD).  I do not remember the exact price, but it is currently an additional $60 CAD for the same upgrade.  (Expect that link to go dead within a week.)  I assumed incorrectly this would be enough.

    So we wasted about $60 on the card, and we'll have to replace it with something better.  I made sure it was compatible and never thought to check memory bandwidth.  Who would ever think a card, any card, produced now would have one third the bandwidth as the Xbox.

    The Radeon HD 4850 has an impressive 63.55 GB/s memory bandwith, that's over 3x as fast as the Xbox!  I'm not sure of the pricing, but even an Radeon HD 3650 would do, it has 25.6 GB/s, about what the Xbox has.
  • 4/17/2009 4:18 AM In reply to

    Re: How to make sure your graphics card is XNA ready


    that's over 3x as fast as the Xbox

    Careful! The Xbox has about 21 GB/s of texture read and vertex read and CPU processing combined, but it has about 250 GB/s of fill rate support, which means things like 4x AA is pretty much free, and multiple passes of render targets are fairly inexpensive. Meanwhile, that 4850 has 63 GB/s that is shared between vertex read, texture read and fill rate (but not CPU processing). It's really hard to actually match the Xbox well on a PC, because the balance is so different. The PS/3 is more normal, with about 25 GB/s of graphics throughput, and 22 GB/s of separate CPU throughput, but it also has some SPU/DMA circuitry and other ways of going between the two banks, too.

  • 4/17/2009 2:44 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    jwatte, your last post shows how stats can be so misleading (without the details).  Where do you get these specific stats from?

    To make sure you have a graphics card that surpasses the Xbox 360 in every way, what would you recommend?  We are pushing the fill rate of our PC graphics card to its limits (the 8GB/s graphics card memory bandwidth PC's that is), but the slowdown on our Xbox from additional sprites is probably due to processing limitations more that rendering.  So it's hard to tell what fill rate we are pushing!
  • 4/17/2009 6:43 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    Where do you get these specific stats from?

    I mostly follow the interwebs, and have done so for twenty-five years. (Yes, there was an internet in 1984!) When the Xbox 360 and PS/3 were in the throes of shipping, the marketing departments published a bunch of specs on the various hardware; you can probably still find it if you Google around a bit.

    It's almost impossible to match the Xbox 360 in raw fill rate on the PC, but given that it's often limited on pixel shaders and texture fetch, a Radeon 4850 or GeForce 9800 is probably a good estimate. If you want to compare shader power, you're probably better off with something like a GeForce 9600 GS. If you want to test fill rate specifically, you can get three GeForce 295 GTX++ overclocked cards and run them in SLI on a 3-way PCI-Ex motherboard, I guess :-/ However, you would have ridiculously too much shader and texture power compared to the Xbox at that point.

    To test for sure, though, you need an Xbox 360. Luckily, an Xbox with hard drive, plus CC club for a year, plus Live! membership for a year, plus cheap 16:9 LCD display, doesn't cost more than one of those GTX 295 cards :-)
  • 5/5/2009 12:48 AM In reply to

    Re: How to make sure your graphics card is XNA ready

    jwatte, you mentioned that one of the things that the 360 gets at low cost due to massive fill rate is "multiple passes of render targets". Do you mean having a HLSL technique with 2 or more passes in it? I would have thought that each pass would need to do all the vertex shader, pixel shader and texture fetch stuff all over again so it would still be bottlenecked as normal. I've probably misunderstood you but I can't think of any kinds of "passes" (except for clearing the screen) that would involve at least texture fetching...
  • 5/6/2009 6:42 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    Hello Guys! I need help please. I just bought new graphic card. It is ATI Radeon 4830. Uninstaled my very very old nvidia card. Instaled newest drivers. Everything (including 3D games) works great, but my XNA games are very slow(1FPS). I am sending there not-buffered 60k vertices to card, but on my super old card was no lags... Do you have any idea? Thanks for any help Michal
  • 5/6/2009 6:58 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    The newest drivers might be crappy. :) I would recommend installed the next to the newest drivers and see what happens. I've seen this more than once.
  • 5/6/2009 9:47 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    Jim Perry:
    The newest drivers might be crappy. :) I would recommend installed the next to the newest drivers and see what happens. I've seen this more than once.
    Hi Jim. Thanks for really quick answer. I tried to instal older drivers (9.3 and 8.12). And problem is still there. Everything is fine, just XNA games doesn't works good. But not all XNA stuff. Easy stuff is ok. I absolutly don't get where is my problem. Don't you have any other advice? ;-). Maybe go to the shop and buy another card :-P.
  • 5/7/2009 12:32 AM In reply to

    Re: How to make sure your graphics card is XNA ready

    reedake2:
    jwatte, you mentioned that one of the things that the 360 gets at low cost due to massive fill rate is "multiple passes of render targets". Do you mean having a HLSL technique with 2 or more passes in it?


    No; I mean that if you do full-screen effects like blurring etc, that will typically run pretty fast on the Xbox, because the framebuffer write and blend operations are "free." Note that the texture read operations aren't free, though -- and, in fact, are more like a GeForce 9400M in performance. You can in many ways consider the Xbox like a device that's a lot like a GeForce 9400M with DDR-3 memory, but with the fill rate of three SLI GTX 295 cards...
  • 7/5/2009 10:43 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    Hi there!

    Jim Perry:

    XNA Game Studio (Express) 1.0, 1.0 Refresh and 2.0 require a DirectX 9 graphics card capable of Shader Model 1.1. ... snip



    It would be cool, if you could update the post concerning XNA 3.0 and 3.1. Especially I would be interessted, whether XNA 3.0/3.1 support anything for DX10?!

    Thanks a lot in adavance!

    Greetings from a beginner
  • 7/5/2009 11:26 PM In reply to

    Re: How to make sure your graphics card is XNA ready

    As long as the target for XNA is to aim for development parity between the Xbox 360 and Windows, there won't be DX10 support in XNA, because the Xbox 360 doesn't do DX10. In fact, for various stupid legacy reasons, XNA is still using the very old DX9 HLSL compiler that doesn't even know how to properly do branched loops, whereas it uses a somewhat better HLSL compiler on Xbox.

    So, Windows people can't do DX10 on XNA, and Xbox people can't do fp10 pixel formats on Xbox (plus a bunch of other esoteric things the Xbox can do if you get down and dirty with the hardware). That's the cost of the cross-development niceness that we do get with XNA.
  • 7/6/2009 9:06 AM In reply to

    Re: How to make sure your graphics card is XNA ready

    Thanks a lot for your interesting answer. Without the wish to spam this FAQ thread (also it surely belongs here, too), is there any documentation about this fact? I would need it for my diploma thesis. I think my professor would like that. ;)
Page 1 of 2 (46 posts) 1 2 Next > Previous Discussion Next Discussion