• <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 | 好看的電影
            我看的累死了   回復  更多評論
              
            亚洲精品国精品久久99热一| 久久综合视频网| 久久久国产精品网站| 伊人久久免费视频| 亚洲国产精品综合久久一线| 国内精品人妻无码久久久影院导航 | 精品国产乱码久久久久久郑州公司| 久久久久久国产精品免费无码 | 国内精品久久久久久久久电影网| 亚洲AV伊人久久青青草原| 久久久久亚洲AV无码麻豆| 久久精品国产精品亚洲| 97r久久精品国产99国产精| 人妻少妇精品久久| 99久久婷婷国产一区二区| 日本人妻丰满熟妇久久久久久| 久久精品无码免费不卡| 国产精品一久久香蕉产线看| 狠狠精品久久久无码中文字幕| 久久久久亚洲精品中文字幕| 精品久久777| 久久久亚洲欧洲日产国码是AV| 人妻中文久久久久| 亚洲精品无码久久久影院相关影片 | 久久久亚洲欧洲日产国码二区| 中文字幕乱码久久午夜| 精品永久久福利一区二区| 国产精品美女久久久免费| 久久久久久精品久久久久| 国产福利电影一区二区三区久久久久成人精品综合 | 久久96国产精品久久久| 精品国产福利久久久| 久久91综合国产91久久精品| 91精品国产综合久久香蕉| 久久黄视频| 久久精品国产亚洲AV电影| 久久婷婷五月综合97色一本一本| 久久久噜噜噜www成人网| 久久久久久久国产免费看| 99久久久国产精品免费无卡顿| 国产精品成人无码久久久久久|