Jump to content
  • Advertisement
Sign in to follow this  

[D3D10] Fixed function is gone but...

This topic is 3673 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

...having ported most of my engine to D3D10 I was wondering how would I deal with alpha channels and such, and found out - as I expected - that I need to code my own alpha functions in the pixel shader. So goodbye BLEND_FUNCs, ONE_MINUS, SRC_DEST etc. etc. Then I wondered: What about culling? And the depth test? And I found this:
typedef struct D3D10_RASTERIZER_DESC {
    D3D10_FILL_MODE FillMode;
    D3D10_CULL_MODE CullMode;
    BOOL FrontCounterClockwise;
    INT DepthBias;
    FLOAT DepthBiasClamp;
    FLOAT SlopeScaledDepthBias;
    BOOL DepthClipEnable;
    BOOL ScissorEnable;
    BOOL MultisampleEnable;
    BOOL AntialiasedLineEnable;

So in the end some stage of the pipeline IS still "fixed", or am I wrong? I thought that finally I could have grouped renderings by shader technique only, but it seems I have to take into account different rasterizer states too. Am I right? And by the way: what about Depth test and Z-writes? How should I deal with those? Plese help me shedding some light on my confusion and... thanks again.

Share this post

Link to post
Share on other sites
When one speaks of a "fixed function pipeline", one is generally referring to the vertex processing and fragment shading stages. Certain portions of the pipeline are still implemented with dedicated circuitry, or otherwise are not exposed in a text-programmable manner by the API. See the description of the "Output merger" in the paper covering the design of D3D10.

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!