青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

專職C++

不能停止的腳步

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  163 Posts :: 7 Stories :: 135 Comments :: 0 Trackbacks

常用鏈接

留言簿(28)

我參與的團隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

  1 bool HGE_Impl::_init_lost()
  2 {
  3     CRenderTargetList *target=pTargets;
  4 
  5 // Store render target
  6     //屏幕表面    
  7     pScreenSurf=0;
  8     //屏幕深度
  9     pScreenDepth=0;
 10 
 11     pD3DDevice->GetRenderTarget(&pScreenSurf); //取渲染目標表面,這個函數在DX9有些變化
 12     pD3DDevice->GetDepthStencilSurface(&pScreenDepth); //取屏幕深度
 13     //當存在渲染目標時
 14     while(target)
 15     {
 16         //如果目標紋理存在,則重新創建紋理
 17         if(target->pTex)
 18             D3DXCreateTexture(pD3DDevice, target->width, target->height, 1, D3DUSAGE_RENDERTARGET,
 19                               d3dpp->BackBufferFormat, D3DPOOL_DEFAULT, &target->pTex);
 20         //如果深度存在,則重新創建深度表面
 21         if(target->pDepth)
 22             pD3DDevice->CreateDepthStencilSurface(target->width, target->height,
 23                                                   D3DFMT_D16, D3DMULTISAMPLE_NONE, &target->pDepth);
 24         target=target->next;
 25     }
 26 
 27 // Create Vertex buffer
 28     //創建頂點緩存
 29     if( FAILED (pD3DDevice->CreateVertexBuffer(VERTEX_BUFFER_SIZE*sizeof(hgeVertex),
 30                                               D3DUSAGE_WRITEONLY,
 31                                               D3DFVF_HGEVERTEX,
 32                                               D3DPOOL_DEFAULT, &pVB )))
 33     {
 34         _PostError("Can't create D3D vertex buffer");
 35         return false;
 36     }
 37     //設置頂點格式,在Dx9中,將DX8的這個函數SetVertexShader分成了SetVertexShader和SetFVF
 38     //在DX9中,我們只需要使用SetFVF就可以設置頂點格式了
 39     pD3DDevice->SetVertexShader( D3DFVF_HGEVERTEX );
 40     //把一個頂點緩存綁定到一個設備數據流
 41     pD3DDevice->SetStreamSource( 0, pVB, sizeof(hgeVertex) );
 42 
 43 // Create and setup Index buffer
 44     //創建索引緩存
 45     if( FAILED( pD3DDevice->CreateIndexBuffer(VERTEX_BUFFER_SIZE*6/4*sizeof(WORD),
 46                                               D3DUSAGE_WRITEONLY,
 47                                               D3DFMT_INDEX16,
 48                                               D3DPOOL_DEFAULT, &pIB ) ) )
 49     {
 50         _PostError("Can't create D3D index buffer");
 51         return false;
 52     }
 53     //鎖定頂點緩存
 54     WORD *pIndices, n=0;
 55     if( FAILED( pIB->Lock( 0, 0, (BYTE**)&pIndices, 0 ) ) )
 56     {
 57         _PostError("Can't lock D3D index buffer");
 58         return false;
 59     }
 60     //建立索引 這里主要是針對hgeQuad的方式。DX中沒有四邊形圖元,所以這里是由兩個三角形拼起來的。
 61     //繪制三角形的時候,默認是逆時針方向繪三個頂點
 62     for(int i=0; i<VERTEX_BUFFER_SIZE/4; i++) {
 63         /*
 64             第一個三角形
 65             pIndices[0] = n;
 66             pIndices[1] = n+1;
 67             pIndices[2] = n+2;
 68          */
 69         *pIndices++=n;
 70         *pIndices++=n+1;
 71         *pIndices++=n+2;
 72         /*
 73             第二個三角形
 74             pIndices[0] = n+2;
 75             pIndices[1] = n+3;
 76             pIndices[2] = n;
 77          */
 78         *pIndices++=n+2;
 79         *pIndices++=n+3;
 80         *pIndices++=n;
 81         n+=4;
 82     }
 83     pIB->Unlock();
 84     pD3DDevice->SetIndices(pIB,0);
 85 
 86     // Set common render states
 87     //設置通用渲染狀態
 88 
 89     //pD3DDevice->SetRenderState( D3DRS_LASTPIXEL, FALSE );
 90     //D3DRS_CULLMODE 這個參數用來指定三角形背面的剔除方式。
 91     //D3DCULL_NONE,不要剔除背面;
 92     //D3DCULL_CW,按照順時針的方向的頂點剔除背面;
 93     //D3DCULL_CCW,按照逆時針方向剔除背面。
 94     pD3DDevice->SetRenderState( D3DRS_CULLMODE, D3DCULL_NONE );
 95     //關閉光照
 96     pD3DDevice->SetRenderState( D3DRS_LIGHTING, FALSE );
 97     //打開alpha通道
 98     pD3DDevice->SetRenderState( D3DRS_ALPHABLENDENABLE,   TRUE );
 99     //下面設置alpha混合系數
100     pD3DDevice->SetRenderState( D3DRS_SRCBLEND,  D3DBLEND_SRCALPHA );    //設置源混合方式 D3DBLEND_SRCALPHA:Blend factor is (As, As, As, As). 
101     pD3DDevice->SetRenderState( D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA ); //設置目的混合方式 D3DBLEND_INVSRCALPHA:Blend factor is ( 1 - As, 1 - As, 1 - As, 1 - As). 
102 
103     //調用alpha測試,用于提升性能
104     pD3DDevice->SetRenderState( D3DRS_ALPHATESTENABLE, TRUE );
105     //測試參考值,0x01相當于對于全透明的,將不渲染
106     pD3DDevice->SetRenderState( D3DRS_ALPHAREF,        0x01 );
107     //要求渲染>=參考值的像素
108     pD3DDevice->SetRenderState( D3DRS_ALPHAFUNC, D3DCMP_GREATEREQUAL );
109 
110     //設置狀態    
111     //紋理融合操作 
112     pD3DDevice->SetTextureStageState( 0, D3DTSS_COLOROP,   D3DTOP_MODULATE );  //設置顏色通道混合控制為:多參數
113     pD3DDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );    //
114     pD3DDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_DIFFUSE );
115     
116     pD3DDevice->SetTextureStageState( 0, D3DTSS_ALPHAOP,   D3DTOP_MODULATE );  ////設置alpha通道混合控制為:多參數
117     pD3DDevice->SetTextureStageState( 0, D3DTSS_ALPHAARG1, D3DTA_TEXTURE );
118     pD3DDevice->SetTextureStageState( 0, D3DTSS_ALPHAARG2, D3DTA_DIFFUSE );
119     //D3DTSS_MIPFILTER過濾采用近點采樣
120     pD3DDevice->SetTextureStageState(0, D3DTSS_MIPFILTER, D3DTEXF_POINT);
121 
122     if(bTextureFilter) //如果使用紋理過濾
123     {
124         pD3DDevice->SetTextureStageState(0,D3DTSS_MAGFILTER,D3DTEXF_LINEAR);
125         pD3DDevice->SetTextureStageState(0,D3DTSS_MINFILTER,D3DTEXF_LINEAR);
126     }
127     else
128     {
129         pD3DDevice->SetTextureStageState(0,D3DTSS_MAGFILTER,D3DTEXF_POINT);
130         pD3DDevice->SetTextureStageState(0,D3DTSS_MINFILTER,D3DTEXF_POINT);
131     }
132 
133     nPrim=0;
134     CurPrimType=HGEPRIM_QUADS;    //當前主要操作類型
135     CurBlendMode = BLEND_DEFAULT; //當前混合方式
136     CurTexture = NULL;              //當前紋理
137 
138     pD3DDevice->SetTransform(D3DTS_VIEW, &matView);  //設置視圖,該值為默認值,沒有變化
139     pD3DDevice->SetTransform(D3DTS_PROJECTION, &matProj); //設置投影,已設為正交投影,具體參考我前面的散筆:HGE 的坐標轉換函數注釋說明_SetProjectionMatrix 140 
141     return true;
142 }

posted on 2010-02-04 11:36 冬瓜 閱讀(1818) 評論(0)  編輯 收藏 引用 所屬分類: 原創DirectXHGE
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美日韩午夜在线视频| 久久久久88色偷偷免费| 欧美日韩精品久久| 一二美女精品欧洲| 亚洲视频1区| 国产欧美在线观看| 裸体丰满少妇做受久久99精品| 午夜在线不卡| 亚洲国产网站| av72成人在线| 国产综合在线看| 亚洲高清视频在线| 欧美日韩国产页| 亚洲精品免费电影| 一区二区免费在线播放| 一本色道久久88综合日韩精品| 国产精品剧情在线亚洲| 久久久久综合| 欧美日韩成人在线视频| 欧美怡红院视频| 欧美成人a视频| 欧美一区高清| 欧美激情影院| 久久一区二区视频| 欧美午夜宅男影院在线观看| 久久野战av| 欧美日韩和欧美的一区二区| 久久精品亚洲一区二区| 欧美激情视频在线免费观看 欧美视频免费一| 亚洲视频axxx| 老司机午夜精品视频在线观看| 亚洲无限乱码一二三四麻| 久久成人综合视频| 亚洲在线日韩| 欧美福利影院| 久久精品99| 国产精品a久久久久| 亚洲电影在线| 激情综合中文娱乐网| 亚洲天堂成人| 一道本一区二区| 免费国产自线拍一欧美视频| 久久久久国产精品麻豆ai换脸| 欧美午夜激情小视频| 亚洲高清在线观看| 在线精品一区| 久久久久**毛片大全| 欧美一区二区三区日韩| 国产精品v欧美精品v日韩| 亚洲国产高潮在线观看| 亚洲福利国产| 老司机亚洲精品| 蜜桃久久精品乱码一区二区| 国产午夜精品视频| 亚洲综合电影| 性色av一区二区怡红| 欧美日韩亚洲一区二区三区在线| 欧美福利一区二区| 亚洲国产精品综合| 免费欧美高清视频| 欧美激情一区二区在线| 亚洲国产精品va在线观看黑人| 久久精品99| 免费亚洲电影在线| 亚洲黄色av一区| 欧美高清在线| 日韩一区二区免费高清| 亚洲一区国产精品| 国产精品久久网站| 午夜精品亚洲| 久久综合九九| 亚洲精品黄色| 欧美日韩综合另类| 亚洲欧美日韩电影| 老司机免费视频一区二区| 在线观看日韩av电影| 狼人社综合社区| 99国产精品久久久久久久成人热| 亚洲午夜高清视频| 国产精品亚洲视频| 久久精品伊人| 99精品欧美一区二区三区综合在线| 亚洲摸下面视频| 久久久五月天| 99热免费精品| 国产精品日韩| 久久久久91| 亚洲人成在线播放网站岛国| 亚洲专区欧美专区| 国产自产2019最新不卡| 欧美高清不卡| 亚洲欧美日韩爽爽影院| 欧美激情一区二区三区高清视频| 亚洲视频一二区| 国产亚洲精品久| 欧美韩日亚洲| 欧美亚洲免费电影| 亚洲国产精品一区二区尤物区 | 亚洲欧美日韩国产另类专区| 久久久天天操| 亚洲午夜91| 亚洲第一免费播放区| 国产精品久久久久毛片大屁完整版 | 欧美精品久久天天躁 | 久久精品国产免费看久久精品| 狠狠久久亚洲欧美| 国产精品99免费看| 每日更新成人在线视频| 亚洲一区www| 亚洲国产精品久久久久秋霞蜜臀| 午夜精彩视频在线观看不卡| 亚洲国产精品成人久久综合一区| 国产精品热久久久久夜色精品三区| 久久免费国产精品| 亚洲欧美视频在线观看视频| 亚洲国产专区| 欧美成人小视频| 欧美一区二区三区四区高清 | 亚洲精品免费一二三区| 国产亚洲欧洲一区高清在线观看| 欧美日韩国产123| 蜜臀久久久99精品久久久久久| 欧美一级播放| 亚洲一区二区精品视频| 一本色道久久综合亚洲精品高清| 欧美电影免费网站| 久久综合狠狠综合久久综合88| 欧美一二三视频| 午夜视黄欧洲亚洲| 亚洲男人第一av网站| 一区二区三区高清| 99综合视频| 日韩西西人体444www| 亚洲精品一区二区三区不| 亚洲电影免费在线观看| 亚洲电影天堂av| 亚洲国产日本| 亚洲国产精品久久久久| 永久555www成人免费| 黄网站色欧美视频| 伊人久久大香线| 影音欧美亚洲| 亚洲欧洲日韩在线| 最新亚洲一区| 日韩一二三区视频| 亚洲欧美日韩电影| 裸体女人亚洲精品一区| 美女尤物久久精品| 久久综合伊人77777麻豆| 久久夜色精品国产| 欧美电影在线观看完整版| 狂野欧美一区| 免费观看欧美在线视频的网站| 欧美顶级大胆免费视频| 亚洲激情专区| 一区二区三区久久精品| 亚洲欧美色婷婷| 久久理论片午夜琪琪电影网| 欧美.www| 欧美图区在线视频| 国产麻豆精品视频| 精品成人国产在线观看男人呻吟| 精品91久久久久| 亚洲免费观看视频| 亚洲欧美怡红院| 久久一区二区三区四区五区| 欧美激情91| 亚洲图片欧洲图片日韩av| 午夜精品偷拍| 欧美电影电视剧在线观看| 国产精品v日韩精品v欧美精品网站| 国产伦一区二区三区色一情| 韩国成人精品a∨在线观看| 亚洲精品一区中文| 欧美在线电影| 91久久久精品| 欧美一级理论性理论a| 欧美精品 国产精品| 国产欧美日韩视频一区二区| 亚洲激情电影中文字幕| 午夜精品免费在线| 亚洲国产日韩欧美在线图片| 亚洲中字黄色| 欧美日韩喷水| 亚洲第一黄网| 久久精品欧洲| 亚洲私拍自拍| 欧美激情精品久久久久久变态| 国产欧美日韩一区二区三区| 亚洲精品日本| 美女999久久久精品视频| 亚洲性图久久| 欧美片第1页综合| 伊人精品视频| 久久精品国产亚洲5555| 99精品视频一区| 欧美电影免费观看高清| 狠狠色狠狠色综合日日小说| 午夜精品成人在线视频| 亚洲裸体视频|