• <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>
            隨筆-90  評論-947  文章-0  trackbacks-0

            大家好。本人初學 D3D,想搞個兩張圖片從遠處過來的效果。可是,后面那張圖片老是會閃,不知道哪里有問題。請大家幫忙看看。

            輕輕的點擊這里下載我的代碼

            我的大體做法,把兩張圖片讀到2個紋理中,然后每次渲染的時候分別貼到一個四邊形上畫出來。。。

            整個渲染過程就是下面這些:

                   m_pD3DDevice->Clear(0, NULL, D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER, D3DCOLOR_ARGB(0, 0, 0, 0), 1.0f, 0);
                  m_pD3DDevice->BeginScene();

                if (m_fDistance[0] <= 0.0f)
                {
                    m_fDistance[0] = 3000.0f;
                    m_fDistance[1] = 4000.0f;
               }

                for (int i = 1; i >= 0; --i)
                {
                    D3DXMATRIX world;
                    D3DXMatrixTranslation(&world, -400.0, -250.0, m_fDistance[i]);
                    m_pD3DDevice->SetTransform(D3DTS_WORLD, &world);
                    m_pD3DDevice->SetTexture(0, m_pTexture[i]);
                    m_pD3DDevice->SetRenderState(D3DRS_ALPHABLENDENABLE, TRUE);
                    m_pD3DDevice->DrawIndexedPrimitive(D3DPT_TRIANGLELIST, 0, 0, 4, 0, 2);
                    m_pD3DDevice->SetRenderState(D3DRS_ALPHABLENDENABLE, FALSE);

                    m_fDistance[i] -= 10.0f;
                }

                  m_pD3DDevice->EndScene();
                  m_pD3DDevice->Present(NULL, NULL, NULL, NULL);

            不知道哪里做的不對?

            另外,D3DXCreateTextureFromFile 好像很慢,這正常嗎?如果這么慢,很多圖片怎么辦?那些大型游戲這么多元素又是怎么處理的呢?

            先謝過。。。

            posted on 2010-04-29 16:16 溪流 閱讀(2136) 評論(11)  編輯 收藏 引用 所屬分類: C++

            評論:
            # re: D3D 求助,為啥畫面老是閃? 2010-04-29 16:21 | 空明流轉
            對于texture的問題,uv atlas.  回復  更多評論
              
            # re: D3D 求助,為啥畫面老是閃? 2010-04-29 16:48 | 溪流
            @空明流轉
            是慢在貼紋理的過程嗎?  回復  更多評論
              
            # re: D3D 求助,為啥畫面老是閃? 2010-04-29 17:50 | Davy.xu
            D3DXCreateTextureFromFile 好像很慢,這正常嗎?如果這么慢,很多圖片怎么辦?那些大型游戲這么多元素又是怎么處理的呢

            加載紋理當然很慢了,這需要從磁盤加載文件,并將磁盤上的紋理數據拷貝到顯卡.大型的游戲都有后臺加載的,啟動一個線程.在后臺加載到顯卡.  回復  更多評論
              
            # re: D3D 求助,為啥畫面老是閃? 2010-04-29 18:57 | Bill Hsu
            應該是ALPHABLEND造成的  回復  更多評論
              
            # re: D3D 求助,為啥畫面老是閃?[未登錄] 2010-04-29 23:48 | besterChen
            用雙緩存……
            把東西先畫到內存DC上,然后一起顯示出來就不會閃了  回復  更多評論
              
            # re: D3D 求助,為啥畫面老是閃? 2010-04-30 09:11 | 溪流
            @besterChen
            哥哥,這里哪來的DC啊,,麻煩回帖先看帖  回復  更多評論
              
            # re: D3D 求助,為啥畫面老是閃? 2010-04-30 09:12 | 溪流
            @Davy.xu
            哦,好的,多謝指教~~~  回復  更多評論
              
            # re: D3D 求助,為啥畫面老是閃? 2010-04-30 09:13 | 溪流
            @Bill Hsu
            我記得把alphablend關了也閃的。。。等下再試試看  回復  更多評論
              
            # re: D3D 求助,為啥畫面老是閃? 2010-04-30 13:31 | 溪流
            @Bill Hsu
            去掉了還是一樣會閃。。。  回復  更多評論
              
            # re: D3D 求助,為啥畫面老是閃? 2010-04-30 15:35 | 溪流
            發現禁用z-buffer,然后保證從遠處往近處畫,這樣不會閃
            為啥?
            z-buffer這么不經用的嗎?看那些教材上的意思,好像都用的呀  回復  更多評論
              
            # re: D3D 求助,為啥畫面老是閃? 2010-04-30 17:16 | 溪流
            好像是
            D3DXMATRIX projection;
            D3DXMatrixPerspectiveFovLH(&projection, D3DX_PI / 2, (float)m_nWidth / (float)m_nHeight, 0, FLT_MAX);

            的問題

            倒數第二個參數改為正的就可以了。。。有人知道為什么嗎?  回復  更多評論
              
            99久久做夜夜爱天天做精品| 精品国产热久久久福利| 99久久国产综合精品女同图片| 午夜精品久久久久久久久| 亚洲国产精品久久久天堂| 99国内精品久久久久久久 | 人妻无码αv中文字幕久久| 国产99久久精品一区二区| 久久久久国产成人精品亚洲午夜| 久久久久亚洲AV成人网人人网站| 国产亚洲精品自在久久| 久久无码精品一区二区三区| 亚洲αv久久久噜噜噜噜噜| 国内精品免费久久影院| 久久精品国产亚洲av麻豆小说| 国产精品丝袜久久久久久不卡 | 午夜精品久久久久成人| 青青青国产精品国产精品久久久久 | 色婷婷综合久久久中文字幕| 久久99热这里只有精品国产| 久久99亚洲网美利坚合众国| 国产精品成人久久久| 久久这里有精品视频| 一本一道久久精品综合| 日本强好片久久久久久AAA| 国产成年无码久久久免费| 久久影院亚洲一区| 94久久国产乱子伦精品免费| 99久久精品毛片免费播放| 色婷婷综合久久久久中文一区二区| 亚洲欧洲精品成人久久奇米网| 99久久精品九九亚洲精品| 一级做a爰片久久毛片16| www.久久99| 国产欧美久久久精品| 久久大香香蕉国产| 99国产精品久久| 久久亚洲欧美日本精品| 久久国产乱子伦免费精品| 久久人人爽人人爽人人AV东京热| 亚洲精品国产自在久久|