• <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 閱讀(3260) 評論(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 | 好看的電影
            我看的累死了   回復  更多評論
              
            久久精品国产91久久综合麻豆自制| 久久久精品无码专区不卡| 少妇无套内谢久久久久| 无码人妻精品一区二区三区久久| 99国产欧美久久久精品蜜芽 | 久久久久九九精品影院| 久久国产亚洲精品| 免费观看久久精彩视频| 久久无码专区国产精品发布| 久久无码av三级| 亚洲综合精品香蕉久久网| 久久精品国产一区二区三区| 五月丁香综合激情六月久久| 久久男人AV资源网站| 2020久久精品国产免费| 久久无码AV中文出轨人妻| Xx性欧美肥妇精品久久久久久| 久久久久亚洲AV无码去区首| 国内精品伊人久久久久AV影院| 国产免费久久精品丫丫| 精品久久久久久国产| 久久精品中文字幕大胸| 久久www免费人成看国产片| 久久w5ww成w人免费| 精品国产99久久久久久麻豆| 一本久久久久久久| 99久久免费国产精品热| 精品久久久久香蕉网| 性做久久久久久久| 亚洲va久久久噜噜噜久久天堂| 青青草国产97免久久费观看| 久久精品国产99久久香蕉| 93精91精品国产综合久久香蕉| 精品久久久久久国产91| 国产韩国精品一区二区三区久久 | 久久久久久毛片免费播放| av色综合久久天堂av色综合在| 思思久久99热只有频精品66| 久久久久亚洲精品日久生情| 一本久久a久久精品亚洲| 久久久久无码精品国产不卡|