• <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
                  開始看directx了,發現學ogre,還是現弄懂directx會比較好點。

                  這個程序主要體現了directx的一個基本的框架。
              1. 在初始化D3D設備后,開始設置頂點緩存,將要顯示的點輸入,
              2.用函數D3DXMatrixPerspectiveFovLH 求投影矩陣,該函數根據視域體的屬性求出投影矩陣
              3.設置頂點渲染的方法,
            device->CreateVertexBuffer(3 * sizeof(Vertex), D3DUSAGE_WRITEONLY, D3DFVF_XYZ, D3DPOOL_MANAGED, &Triangle, 0);

                Vertex
            * vertices;
                Triangle
            ->Lock(00,(void**)&vertices, 0);

                vertices[
            0= Vertex(-1.0f0.0f2.0f);
                vertices[
            1= Vertex(0.0f1.0f2.0f);
                vertices[
            2= Vertex(1.0f0.0f2.0f);

                Triangle
            ->Unlock();

                D3DXMATRIX proj;
                D3DXMatrixPerspectiveFovLH(
            &proj, D3DX_PI * 0.5f, (float)800 / (float)6001.0f1000.0f);
                
                device
            ->SetTransform(D3DTS_PROJECTION, &proj);

                device
            ->SetRenderState(D3DRS_FILLMODE, D3DFILL_WIREFRAME);


              4.在消息循環函數中
            while(msg.message != WM_QUIT)
                
            {
                    
            if(::PeekMessage(&msg, 000, PM_REMOVE)) //////////////這里有個疑惑,什么時候if語句不成立呢
                    {
                        ::TranslateMessage(
            &msg);
                        ::DispatchMessage(
            &msg);
                         }

                      
            else
                    
            {    
                           
            float currTime  = (float)timeGetTime();
                           
            float timeDelta = (currTime - lastTime)*0.001f;

                            ptr_display(timeDelta);

                           lastTime 
            = currTime;
                       }

                }
            這里是場景的渲染
            device->Clear(00, D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER, 0xffffffff1.0f0);

                    device
            ->BeginScene();

                    device
            ->SetStreamSource(0, Triangle, 0sizeof(Vertex));   //將Vertexbuffer中的頂點倒入到流當中
                    device
            ->SetFVF(Vertex::FVF); //設置頂點的格式  FVF已被我賦值為 FVF_XYZ
             
                    device
            ->DrawPrimitive(D3DPT_TRIANGLELIST, 01); //圖元類型 三角形 個數為一個

                    device
            ->EndScene();

                    
            // Swap the back and front buffers.
                    device->Present(0000);
            posted on 2008-09-18 20:30 AstaTus 閱讀(284) 評論(0)  編輯 收藏 引用 所屬分類: DIRECTX9
            久久99精品国产99久久6| 一本久久a久久精品综合香蕉| 久久精品国产亚洲AV高清热| 69久久夜色精品国产69| 久久久精品波多野结衣| 精品久久久久久久无码| 久久久久国产一区二区| 亚洲AV无一区二区三区久久| 狠狠人妻久久久久久综合| 中文国产成人精品久久不卡| 久久激情亚洲精品无码?V| 久久久久久夜精品精品免费啦| 久久本道久久综合伊人| 国产午夜久久影院| 伊人久久大香线蕉av不卡| 欧美粉嫩小泬久久久久久久| 99久久人妻无码精品系列蜜桃| 精品国产99久久久久久麻豆| 久久精品人妻一区二区三区| 香蕉久久夜色精品升级完成| 亚洲国产精品综合久久网络 | 久久久久国产精品麻豆AR影院| 久久综合精品国产二区无码| 久久精品中文无码资源站| 久久亚洲天堂| 欧美一级久久久久久久大片| 久久99国产精品成人欧美| 日本一区精品久久久久影院| 国内精品久久久久影院免费| AV狠狠色丁香婷婷综合久久| 久久国产精品一国产精品金尊| 久久亚洲国产成人精品性色| 亚洲伊人久久精品影院| 亚洲av伊人久久综合密臀性色| 精品国产99久久久久久麻豆| 无码人妻久久一区二区三区免费| 国产精品亚洲综合久久| 亚洲国产欧美国产综合久久| 亚洲国产精品无码久久久秋霞2| 无码人妻精品一区二区三区久久| 亚洲va久久久噜噜噜久久天堂|