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

小烏龜

在夢想的道路上還能走多遠

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::

   DirectX中,如何獲取深度值,然后將它存儲在一個txt文件中?其實只要修改兩個地方:
   第一個地方是:創建Direct3D設備時,將D3DPRESENT_PARAMETERS類型表示變量的AutoDepthStencilFormat設置為D3DFMT_D32F_LOCKABLE,代碼如下:   

 
    D3DPRESENT_PARAMETERS d3dpp;
    d3dpp.BackBufferWidth            
= width;
    d3dpp.BackBufferHeight           
= height;
    d3dpp.BackBufferFormat           
= D3DFMT_A8R8G8B8;
    d3dpp.BackBufferCount            
= 1;
    d3dpp.MultiSampleType            
= D3DMULTISAMPLE_NONE;
    d3dpp.MultiSampleQuality         
= 0;
    d3dpp.SwapEffect                  
= D3DSWAPEFFECT_DISCARD; 
    d3dpp.hDeviceWindow             
= hwnd;
    d3dpp.Windowed                     
= windowed;
    d3dpp.EnableAutoDepthStencil     
= true
    d3dpp.AutoDepthStencilFormat     
= D3DFMT_D32F_LOCKABLE;    // 16位總不行
    d3dpp.Flags                      = 0;
    d3dpp.FullScreen_RefreshRateInHz 
= D3DPRESENT_RATE_DEFAULT;
    d3dpp.PresentationInterval       
= D3DPRESENT_INTERVAL_IMMEDIATE;


   第二個地方是:設置鎖定緩存表面,并進行讀寫的代碼:

// 獲取深度模板表面
            HRESULT hr = Device->GetDepthStencilSurface( &pZBuffer );
            
if ( FAILED( hr ) ) 
                MessageBox( NULL, 
"GetDepthStencilSurface failure"00 ); 
            }

            
            
// 打開文件
            pFile = fopen( "ZBuffer.txt""w" );
            
if ( pFile == NULL ) 
                MessageBox( NULL, 
"shit", NULL, NULL); 
            }

            
            
// 獲取表面特性
            D3DSURFACE_DESC surfaceDesc;
            pZBuffer
->GetDesc( &surfaceDesc );

            
// 鎖定表面
            D3DLOCKED_RECT lockRect;
            hr 
= pZBuffer->LockRect( &lockRect, NULL, D3DLOCK_READONLY );
            
if ( FAILED( hr ) ) 
                MessageBox( NULL, 
"GetDepthStencilSurface"00 ); 
            }

            
            
// 獲取指向表面區域指針
            float* pData = (float*)lockRect.pBits;

            
// 將深度信息輸出到文件中
            for (int y = 0; y < surfaceDesc.Height; ++y ) {
                
for (int x = 0; x < surfaceDesc.Width; ++x ) {
                    
int index = y * lockRect.Pitch / 4 + x;
                    fprintf( pFile, 
"%f  ", pData[index] );
                }

                fprintf( pFile,
"\n");
            }

            
            
// 解鎖表面鎖定
            pZBuffer->UnlockRect();    
            
            
// 釋放接口和文件
            pZBuffer->Release();
            fclose( pFile );


posted on 2010-01-06 19:02 小烏龜 閱讀(1670) 評論(3)  編輯 收藏 引用 所屬分類: DirectX10

評論

# re: DirectX9獲取深度緩存值 2014-01-02 14:05 junjie020
請問你有試過,使用:

D3DDevice->CreateTexture(width, height, 1, D3DUSAGE_DEPTHSTENCIL, D3DFMT_D32F_LOCKABLE, D3DPOOL_DEFAULT, &pTex, NULL);

創建出一個depth texture,然后:
pTex->LockRect()能成功嗎?  回復  更多評論
  

# re: DirectX9獲取深度緩存值 2016-07-22 15:26 編程小旋風
這樣創建紋理就直接報錯 試過了 @junjie020
  回復  更多評論
  

# re: DirectX9獲取深度緩存值 2016-07-23 12:14 編程小旋風
不行 設置為D3DFMT_D32_LOCKABLE后創建設備的時候就失敗了   回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            国产精品一区2区| 久久这里只有精品视频首页| 欧美三级电影大全| 亚洲欧美三级伦理| 久久久亚洲成人| 亚洲一区国产| 伊人久久久大香线蕉综合直播| 欧美大色视频| 老司机久久99久久精品播放免费 | 欧美日韩精品系列| 欧美性开放视频| 亚洲激情在线观看| 亚洲国产精品视频| 亚洲欧美日韩成人| 国产日韩亚洲欧美| 久久免费国产精品| 欧美一区二区三区啪啪| 亚洲第一页中文字幕| 亚洲综合欧美日韩| 日韩亚洲精品在线| 久久久久久一区二区三区| 国内精品福利| 亚洲美女性视频| 亚洲精华国产欧美| 欧美国产高潮xxxx1819| 久久久九九九九| 国产精品看片资源| 亚洲精品美女在线观看| **欧美日韩vr在线| 久久精品日韩一区二区三区| 亚洲欧美国产一区二区三区| 欧美日韩成人| 亚洲麻豆国产自偷在线| 99视频+国产日韩欧美| 国产精品久久久久婷婷| 亚洲视频视频在线| 亚洲一区在线观看视频| 国产精品久久久| 亚洲视频久久| 欧美一级大片在线观看| 国产精品一区久久久| 亚洲欧美不卡| 久久精品中文字幕免费mv| 国产一区二区三区日韩| 久久激情视频久久| 免费h精品视频在线播放| 国产一区二区三区网站| 久久九九久久九九| 欧美不卡三区| 一区二区三区四区五区视频| 欧美三级黄美女| 亚洲欧美在线一区二区| 久久成人一区| 亚洲第一搞黄网站| 欧美在线国产精品| 久久久久久久久综合| 亚洲国产精品va在线看黑人| 亚洲图片在线观看| 黄色欧美日韩| 欧美色综合天天久久综合精品| 小黄鸭精品密入口导航| 亚洲黄一区二区| 久久久久在线观看| 在线视频亚洲一区| 在线看日韩欧美| 黑人极品videos精品欧美裸| 久久久亚洲高清| 久久狠狠久久综合桃花| 最新中文字幕一区二区三区| 国产精品成人一区二区网站软件 | 日韩手机在线导航| 欧美激情亚洲自拍| 亚洲国产成人不卡| 欧美国产视频在线| 午夜免费久久久久| 午夜欧美视频| 午夜国产欧美理论在线播放| 亚洲深夜影院| 亚洲欧洲av一区二区| 久久婷婷综合激情| 免费成人高清视频| 欧美国产视频日韩| 欧美激情在线| 亚洲二区在线视频| 亚洲韩国青草视频| 亚洲调教视频在线观看| 一区二区高清视频在线观看| 亚洲一区一卡| 久久亚洲精品中文字幕冲田杏梨 | 久久免费视频在线观看| 久久三级视频| 欧美精品午夜| 亚洲精品影视| 亚洲视频在线一区观看| 99国产精品99久久久久久| 日韩视频在线一区二区| 在线视频你懂得一区二区三区| aa日韩免费精品视频一| 亚洲一区二区三区中文字幕在线| 午夜国产精品影院在线观看| 媚黑女一区二区| 亚洲人成毛片在线播放| 欧美在线不卡| 国产精品最新自拍| 亚洲欧美在线看| 在线视频你懂得一区| 香蕉尹人综合在线观看| 欧美wwwwww| 影音先锋中文字幕一区| 亚洲校园激情| 日韩一区二区精品| 欧美成人中文字幕| 黄色亚洲大片免费在线观看| 亚洲一区二区免费| 欧美成人一区二区三区在线观看| 欧美大片免费久久精品三p | 在线视频你懂得一区| 欧美诱惑福利视频| 国产精品欧美久久久久无广告| 亚洲激情小视频| 欧美在线网址| 久久久久国产精品午夜一区| 老司机精品视频网站| 亚洲国产精品悠悠久久琪琪| 一二三四社区欧美黄| 欧美成人a视频| 欧美日韩在线另类| 欧美精品粉嫩高潮一区二区 | 久久综合网络一区二区| 欧美一区二区福利在线| 亚洲一区日韩在线| 亚洲一区在线视频| 亚洲综合三区| 欧美.日韩.国产.一区.二区| 久久亚洲综合网| 亚洲免费观看在线观看| 欧美一级视频| 欧美精品www在线观看| 国产日韩在线视频| 亚洲精品一区在线观看香蕉| 久久er99精品| 亚洲欧洲日韩综合二区| 午夜国产不卡在线观看视频| 欧美激情视频免费观看| 欧美日韩国产色站一区二区三区| 国产精品99久久99久久久二8| 久久精品色图| 免费视频一区二区三区在线观看| 99国产精品久久久久久久| 欧美激情视频网站| 欧美一级在线视频| 欧美日韩一区二区在线视频| 亚洲人成在线观看| 99热免费精品在线观看| 欧美va天堂| 久久国产精品99久久久久久老狼| 欧美精品日韩三级| 国产欧美1区2区3区| 激情另类综合| 欧美一区二区三区四区视频| 蜜桃久久av一区| 久久精品成人一区二区三区| 国产精品毛片a∨一区二区三区|国 | 国产综合久久久久影院| 久久久精品日韩| 久久久精品午夜少妇| 亚洲国产精品国自产拍av秋霞| 国产精品青草综合久久久久99 | 久久先锋影音av| 亚洲视频在线一区观看| 欧美激情欧美激情在线五月| 一区二区三区在线视频播放| 欧美在线视频二区| 午夜精品久久久久久久久久久久久| 性色av一区二区三区| 国产精品日日摸夜夜摸av| 亚洲专区一二三| 午夜亚洲福利| 好吊日精品视频| 麻豆91精品| 欧美日韩国产三级| 亚洲一区在线播放| 国产精品99久久久久久久久| 国产精品福利在线观看| 欧美在线视频一区二区| 久久国产欧美精品| 欧美天堂亚洲电影院在线观看| 欧美专区在线播放| 欧美在线亚洲一区| 欧美先锋影音| 午夜影视日本亚洲欧洲精品| 亚洲精品中文字| 国产欧美亚洲一区| 老司机一区二区三区| 欧美大成色www永久网站婷| 亚洲肉体裸体xxxx137| 欧美在线欧美在线| 欧美高清视频在线 | 媚黑女一区二区| 欧美视频导航|