• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            AstaTus
            -- 夏天不熱。。
            posts - 22,comments - 12,trackbacks - 0

                這個兩個函數的參數一大堆,害我頭都大了2,3倍。。今天整理下已經能夠大概清晰明白的參數。。
            緩存存的是一個屏幕像素的值。。
               先來SetTextureStageState:

               HRESULT SetTextureStageState(
               DWORD Stage,
               D3DTEXTURESTAGESTATETYPE Type,
               DWORD Value
               );

               stage這個參數是指第幾層紋理,1.2.3...9,, 這個版本的dx最多支持9層紋理。
               Type:Defines the type of operation that a texture stage will perform.//定義對該紋理的哪個屬進行設置,值很多。。。
               Value: 指的是前面所選屬性的值

            type:
                D3DTSS_ALPHAOP = 4,     //alpha通道的運算,
                D3DTSS_COLOROP = 1,     //顏色的運算
                                                                //這里的op 是operations,指對前面設置的顏色進行運算
                                                               //既后面的2個type:D3DTSS_COLORARG1,D3DTSS_COLORARG2
                                                               //或D3DTSS_ALPHAARG1,D3DTSS_ALPHAARG2 = 6
            value:
                D3DTOP_DISABLE = 1,                           //該紋理無效,既不顯示
                D3DTOP_SELECTARG1 = 2,                  //選擇第1個顏色值(既D3DTSS_COLORARG1的值)作為紋理顏色輸出
                D3DTOP_SELECTARG2 = 3,                  //選擇第2個顏色值(既D3DTSS_COLORARG2的值)作為紋理顏色輸出
                D3DTOP_MODULATE = 4,                    //將顏色1和顏色2相乘作為紋理顏色輸出
                D3DTOP_MODULATE2X = 5,               //將顏色1和顏色2相乘后左移1bit(用于增亮)作為紋理顏色輸出 ,
                D3DTOP_MODULATE4X = 6,               //將顏色1和顏色2相乘后左移2bit(用于增亮)作為紋理顏色輸出
                D3DTOP_ADD = 7,                                 //將顏色1和顏色2相加作為紋理顏色輸出
                D3DTOP_ADDSIGNED = 8,                  ///////////后面的參見SDK 都是對2個顏色進行運算
                D3DTOP_ADDSIGNED2X = 9,
                D3DTOP_SUBTRACT = 10,
                D3DTOP_ADDSMOOTH = 11,
                D3DTOP_BLENDDIFFUSEALPHA = 12,
                D3DTOP_BLENDTEXTUREALPHA = 13,
                D3DTOP_BLENDFACTORALPHA = 14,
                D3DTOP_BLENDTEXTUREALPHAPM = 15,
                D3DTOP_BLENDCURRENTALPHA = 16,
                D3DTOP_PREMODULATE = 17,
                D3DTOP_MODULATEALPHA_ADDCOLOR = 18,
                D3DTOP_MODULATECOLOR_ADDALPHA = 19,
                D3DTOP_MODULATEINVALPHA_ADDCOLOR = 20,
                D3DTOP_MODULATEINVCOLOR_ADDALPHA = 21,
                D3DTOP_BUMPENVMAP = 22,
                D3DTOP_BUMPENVMAPLUMINANCE = 23,
                D3DTOP_DOTPRODUCT3 = 24,
                D3DTOP_MULTIPLYADD = 25,
                D3DTOP_LERP = 26,
                D3DTOP_FORCE_DWORD = 0x7fffffff,

                 
            type:
                D3DTSS_COLORARG1 = 2,  
                D3DTSS_COLORARG2 = 3,
                D3DTSS_ALPHAARG1 = 5,
                D3DTSS_ALPHAARG2 = 6,
                D3DTSS_COLORARG0 = 26,
                D3DTSS_ALPHAARG0 = 27,
                D3DTSS_RESULTARG = 28,
            value:
                 這里的TA指的是texture arguments ,
                  D3DTA_CONSTANT             //給當前紋理一個固定的值;
                  D3DTA_DIFFUSE;               //diffuse的值作為參數 diffuse 可能有多個來源。。比如材質,vertex
                  D3DTA_SELECTMASK         //Mask value for all arguments; not used when setting texture arguments 這句話不理解啊,為什么要偽裝呢  
                  D3DTA_SPECULAR             //取spercular 的值作為參數  來源同diffuse
                  D3DTA_TEMP                     //待定。。
                  D3DTA_TEXTURE              //用紋理的顏色值作為參數
                  D3DTA_TFACTOR              //待定。。

             

            ////////////////////////////////////////////////////////////////////////////////////
            以下還沒來得及研究。。貌似叫難懂,還請高人指點啊


            D3DTSS_BUMPENVMAT00 = 7,
            D3DTSS_BUMPENVMAT01 = 8,
            D3DTSS_BUMPENVMAT10 = 9,
            D3DTSS_BUMPENVMAT11 = 10,
            D3DTSS_TEXCOORDINDEX = 11,
            D3DTSS_BUMPENVLSCALE = 22,
            D3DTSS_BUMPENVLOFFSET = 23,
            D3DTSS_TEXTURETRANSFORMFLAGS = 24,
            D3DTSS_CONSTANT = 32,
            D3DTSS_FORCE_DWORD = 0x7fffffff,

             

            、
            HRESULT SetRenderState(
            D3DRENDERSTATETYPE State,     //所要設置的狀態
            DWORD Value                   //該狀態的值
            );
             
            State 的取值
             
             
             
             
             
             
             

             

            posted on 2008-10-08 23:12 AstaTus 閱讀(3242) 評論(3)  編輯 收藏 引用 所屬分類: DIRECTX9

            FeedBack:
            # re: DirectX9 的 SetTextureStageState & SetRenderState
            2008-12-22 09:29 | sen
            我也剛看,頭大。。。  回復  更多評論
              
            # re: DirectX9 的 SetTextureStageState & SetRenderState
            2010-07-09 00:18 | 好看的電影
            剛看龍書到這里卡住了 相當感謝博主  回復  更多評論
              
            # re: DirectX9 的 SetTextureStageState & SetRenderState
            2010-08-08 21:16 | 好看的電影
            我看的累死了   回復  更多評論
              
            国内精品久久久久| 久久久久女人精品毛片| 秋霞久久国产精品电影院| www.久久热| 久久精品?ⅴ无码中文字幕| 久久久无码精品午夜| 亚洲精品无码久久久久去q| 精品一区二区久久| 久久无码AV一区二区三区| 日韩久久久久久中文人妻| 国产精品99久久久久久www| 久久精品一本到99热免费| 久久er国产精品免费观看2| 亚洲精品无码久久久久AV麻豆| 成人妇女免费播放久久久| 中文字幕精品久久久久人妻| 999久久久无码国产精品| 亚洲精品99久久久久中文字幕 | 一本大道久久a久久精品综合| 欧美一级久久久久久久大| 成人久久精品一区二区三区| 欧美亚洲国产精品久久高清| 国内精品伊人久久久久影院对白| 无码国内精品久久人妻| 久久精品国产99久久香蕉| 久久免费小视频| 久久精品国产亚洲AV大全| 亚洲日本va中文字幕久久| 一级做a爰片久久毛片免费陪| 国产—久久香蕉国产线看观看| 久久99精品久久久久子伦| 日韩人妻无码精品久久免费一| 久久久久高潮综合影院| 久久国语露脸国产精品电影| 免费一级做a爰片久久毛片潮| 国产综合精品久久亚洲| 久久久久久综合一区中文字幕| 99久久国产综合精品麻豆| 99久久综合狠狠综合久久止| 欧美激情精品久久久久| 99精品久久久久久久婷婷|