Page 1 of 2 12 LastLast
Results 1 to 10 of 13

Thread: Shader Model 3.0 - No Limits

  1. #1
    Shader Model 3.0 - No Limits read it

    Microsoft® DirectX® 9.0 introduced several new standards for advanced vertex and pixel shader technology, version 2.0 and version 3.0. Shader Model 2.0 hardware has been available for over a year, and both hardware and software support is growing rapidly. Shader Model 2.0 includes technologies useful for advanced lighting and animation techniques, but has limited shader program length, and complexity, which limits the fidelity of the effects that can be achieved.

    As developers push against the limits inherent in Pixel Shader 2.0 and Vertex Shader 2.0, they have started to adopt the newer, more advanced Shader Model 3.0. This shader model has advances in several areas, in both pixel and vertex shader processing.

    The following is a feature summary outlining the key differentiators between Pixel Shader 2.0 and 3.0.

    One major feature of both Shader 3.0 models (vertex and pixel) is Dynamic Branching. Put simply, this allows a shader author to create true loops and conditionals in their shader programs. For instance, one could write a shader that looped through a certain number of vertex lights, determine which ones might influence a particular vertex, and then pass down the index of each relevant light to the pixel shader. The pixel shader could then use this ‘light index’ to determine which light parameters to apply. The pixel shader would then loop over the active lights, then use dynamic branching to exit the shader early once all lights are processed.

    Most light types only apply to the front side of an object—the side facing the light. Therefore, you can use both vertex and pixel branching to skip processing for lights that the shader detects as facing away from the light. This can save significant processing time, and speed up the shader. Similar speedups can be used to skip processing of character bone animation as well as many similar algorithms.

    As game engines become more and more complex, they often create many different versions of each shader in order to fit them all in to the Pixel Shader 2.0 program length limitations. This can add to code maintenance, as well as take up valuable system memory at runtime. Shader Model 3.0 eliminates this issue, through its comprehensive looping and branching, allowing the engine to write a single vertex and single pixel shader containing appropriate static and dynamic branching in order to select the correct execution path at runtime, thus greatly simplifying the shader combinatorial explosion issue.

    Another key feature of Shader Model 3.0 is the support for the Microsoft DirectX® Instancing API. Currently, games face limits on the number of unique objects they can display in the scene, not because of graphics horsepower, but often the CPU-side overhead of either storing or submitting many slightly different variations of the same object. For instance, a forest is made up of trees that are often similar to each other, but each would be in a different position, have differing height, branch length, leaf color, and so on. In order to add the desired variation, developers have to choose between storing many separate copies of the tree, each slightly different, or making expensive render state changes in order to rotate, scale, color and place each tree.


    Instancing allows the programmer to store a single tree, and then several other vertex data streams to specify the per-instance color, height, branch size and so on. For instance, a single 1000-vertex tree model would contain the vertex positions and normals, and a 200-element vertex streams would contain positions, colors, heights, and branch length values. Instancing allows the programmer to submit a single draw call, which renders each of the 200 trees, using the same data for the basic tree shape, but then vary it through the per-instance streams.

    In summary, DirectX 9.0 Shader Model 3.0 is a significant step forward in terms of ease of use, performance, and shader complexity. Dynamic branching brings speed-ups to many algorithms which contain early-out opportunities, while also simplifying shader code paths in graphics engines and tools. Lastly, instancing allows extreme complexity for very low CPU and memory overhead.

  2. Software & Hardware   -   #2
    tesco's Avatar woowoo
    Join Date
    Aug 2003
    Location
    Canadia
    Posts
    21,669
    That sounds pretty cool. look slike games are gona be getting a lot more detailed in the near future...what models is this on? is it in surrent models or is it going to be released in the pci express cards?

  3. Software & Hardware   -   #3
    From what I hear, nvidia is going to support PS3 in their next generation cards (NV 40) and ATi probably will not. This might give nvidia a bit of an advantage; it really depends. We really do not know yet.

  4. Software & Hardware   -   #4
    RGX's Avatar Unstoppable
    Join Date
    Mar 2003
    Posts
    3,012
    It took them a long while to fully utilize shader 2.0 (i.e Far Cry) so I think it may be a while before we see shader 3.0 implemented in games.

  5. Software & Hardware   -   #5
    atiVidia's Avatar ^would've been cool.
    Join Date
    Dec 2003
    Posts
    1,522
    Originally posted by adamp2p@8 April 2004 - 09:52
    From what I hear, nvidia is going to support PS3 in their next generation cards (NV 40) and ATi probably will not. This might give nvidia a bit of an advantage; it really depends. We really do not know yet.
    lol nvidia will conquer all!!!

    damnit i really dont care so long as their cards work in my system with no issurs (look down in my sig to see what i mean )


    speaking of sigs, adam put ur mouse back in its house pleez

  6. Software & Hardware   -   #6
    tesco's Avatar woowoo
    Join Date
    Aug 2003
    Location
    Canadia
    Posts
    21,669
    Originally posted by atiVidia+8 April 2004 - 14:45--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>QUOTE (atiVidia @ 8 April 2004 - 14:45)</td></tr><tr><td id='QUOTE'> <!--QuoteBegin-adamp2p@8 April 2004 - 09:52
    From what I hear, nvidia is going to support PS3 in their next generation cards (NV 40) and ATi probably will not.&nbsp; This might give nvidia a bit of an advantage; it really depends.&nbsp; We really do not know yet.
    lol nvidia will conquer all&#33;&#33;&#33;

    damnit i really dont care so long as their cards work in my system with no issurs (look down in my sig to see what i mean )


    speaking of sigs, adam put ur mouse back in its house pleez [/b][/quote]
    atividia are you ever going to fix your avator? i hate seeing that box with the red X...

    RGX, fix yours too

  7. Software & Hardware   -   #7
    RGX's Avatar Unstoppable
    Join Date
    Mar 2003
    Posts
    3,012
    Originally posted by ROSSCO_2004+8 April 2004 - 21:47--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>QUOTE (ROSSCO_2004 @ 8 April 2004 - 21:47)</td></tr><tr><td id='QUOTE'>
    Originally posted by atiVidia@8 April 2004 - 14:45
    <!--QuoteBegin-adamp2p
    @8 April 2004 - 09:52
    From what I hear, nvidia is going to support PS3 in their next generation cards (NV 40) and ATi probably will not.&nbsp; This might give nvidia a bit of an advantage; it really depends.&nbsp; We really do not know yet.

    lol nvidia will conquer all&#33;&#33;&#33;

    damnit i really dont care so long as their cards work in my system with no issurs (look down in my sig to see what i mean )


    speaking of sigs, adam put ur mouse back in its house pleez
    atividia are you ever going to fix your avator? i hate seeing that box with the red X...

    RGX, fix yours too [/b][/quote]
    Im goiing to post here, JUST so you can see my red x .

  8. Software & Hardware   -   #8
    tesco's Avatar woowoo
    Join Date
    Aug 2003
    Location
    Canadia
    Posts
    21,669
    Originally posted by RGX+8 April 2004 - 16:49--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>QUOTE (RGX @ 8 April 2004 - 16:49)</td></tr><tr><td id='QUOTE'>
    Originally posted by ROSSCO_2004@8 April 2004 - 21:47
    Originally posted by atiVidia@8 April 2004 - 14:45
    <!--QuoteBegin-adamp2p
    @8 April 2004 - 09:52
    From what I hear, nvidia is going to support PS3 in their next generation cards (NV 40) and ATi probably will not. This might give nvidia a bit of an advantage; it really depends. We really do not know yet.

    lol nvidia will conquer all&#33;&#33;&#33;

    damnit i really dont care so long as their cards work in my system with no issurs (look down in my sig to see what i mean )


    speaking of sigs, adam put ur mouse back in its house pleez

    atividia are you ever going to fix your avator? i hate seeing that box with the red X...

    RGX, fix yours too
    Im goiing to post here, JUST so you can see my red x . [/b][/quote]
    haha i see you fixed it, too bad you fixed it before i even read your post so i didnt have to look at teh red x at all ha

  9. Software & Hardware   -   #9
    RGX's Avatar Unstoppable
    Join Date
    Mar 2003
    Posts
    3,012
    The jokes on you for not using Mozilla Firefox to view your web pages.

  10. Software & Hardware   -   #10
    tesco's Avatar woowoo
    Join Date
    Aug 2003
    Location
    Canadia
    Posts
    21,669
    Originally posted by RGX@8 April 2004 - 17:04
    The jokes on you for not using Mozilla Firefox to view your web pages.
    i hate those programs, i prefer ie, its just...simpler...

Page 1 of 2 12 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •