Re: [語法] 請問DirectX 9的一些問題

看板C_and_CPP (C/C++)作者 (累人啊....)時間16年前 (2009/11/29 18:41), 編輯推噓3(3021)
留言24則, 3人參與, 最新討論串3/8 (看更多)
※ 引述《devilarise (Devil)》之銘言: : : 由於這段過程都是在程式裡面跑的 : 使用者只會看到源源不絕的s3 : : 這是我對這種螢幕切割程式寫法的猜測 : 我也沒真正實際驗證過是否正確 : 如果有錯, 還請各位多多指教 : : ※ 發信站: 批踢踢實業坊(ptt.cc) : ◆ From: 122.116.133.240 : 推 VictorTom:理論上畫四次不同的內容用分佔window四個區域的ViewPort 11/29 10:21 : → VictorTom:也可以辦到....@_@" 11/29 10:21 恩~~~我想你們太看的起我了....這學期修課才修到要用DirectX的課程 之前沒學過...@@ 題目是說做出一個六面體,每一面都有一張不一樣的圖案,然後六面體會旋轉 然後規定說不要用.x檔 而我現在的做法是創出六個device(型態是LPDIRECT3DDEVICE9) 每個device內各有一個面(型態是LPDIRECT3DVERTEXBUFFER9) 然後最後再Present出來 g_pd3dDevice1->Present( NULL, NULL, NULL, NULL ); g_pd3dDevice2->Present( NULL, NULL, NULL, NULL ); ... 可是它只會顯示最後一個Present的device,目前就卡在這裡...@@ 再麻煩有經驗的大大說明吧,謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.18.48.28

11/29 18:51, , 1F
等一下, 畫一個六面體, 簡單想成正立方體好了, 每面有不
11/29 18:51, 1F

11/29 18:51, , 2F
同圖案, 那基本上, 不用這麼多device, 只要一個device,
11/29 18:51, 2F

11/29 18:52, , 3F
準備好畫出一個立方體的vertex資料, 再準備六張texture
11/29 18:52, 3F

11/29 18:52, , 4F
分別貼在六個面上就好啦@_@"
11/29 18:52, 4F

11/29 18:53, , 5F
D3D不熟, 如果用OGL實作的話, 會是設好texture1, 畫第一
11/29 18:53, 5F

11/29 18:53, , 6F
面, 準備texture2, 畫第二面, 以此類推; 照理說不用開多
11/29 18:53, 6F

11/29 18:54, , 7F
個device的, 找看看d3d有沒有簡單的tutorial研究看看,
11/29 18:54, 7F

11/29 18:55, , 8F
這個問題是你只要會畫會貼會轉一面, 那六個面都可以如法
11/29 18:55, 8F

11/29 18:55, , 9F
泡製出來的才對....:)
11/29 18:55, 9F

11/29 19:10, , 10F
我沒記錯的話 present比較像 swapbuffer XD
11/29 19:10, 10F

11/29 19:11, , 11F
device跟present都只需要一個/一次
11/29 19:11, 11F

11/29 19:38, , 12F
基本上立方體我是建起來了,像V大所說的方式,不過texture
11/29 19:38, 12F

11/29 19:39, , 13F
不知道怎麼分別貼上,才採用PO所說的方式...@@
11/29 19:39, 13F

11/29 21:35, , 14F
所以你畫一面貼一張texture會了嗎?_? 那就把這個設
11/29 21:35, 14F

11/29 21:35, , 15F
vertex畫一面與設texture讓它貼的動作分別對不同面各做
11/29 21:35, 15F

11/29 21:35, , 16F
一次, 總共做六次應該就出來了啊@_@"
11/29 21:35, 16F

11/29 21:36, , 17F
因為小弟我只對OGL的API與state setting比較熟, 所以沒
11/29 21:36, 17F

11/29 21:36, , 18F
辦法提供具體作法, 但是應該不會差太多的@_@"
11/29 21:36, 18F

11/29 23:21, , 19F
哈~現在就是一貼就是六個面一次貼同樣的
11/29 23:21, 19F

11/29 23:22, , 20F
看一下API我是找不到還能怎麼用才能像我想要的感覺
11/29 23:22, 20F

11/29 23:22, , 21F
很謝謝你的幫忙~
11/29 23:22, 21F

11/29 23:22, , 22F
因為你一次畫了六個面, 也就是下了六個面的VB對吧?? 把
11/29 23:22, 22F

11/29 23:23, , 23F
它分成六次, 每次只畫一面的兩個三角形, 搭配你下
11/29 23:23, 23F

11/29 23:23, , 24F
texture的API, 應該就可以做出效果了@_@"
11/29 23:23, 24F
文章代碼(AID): #1B4a_tgd (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1B4a_tgd (C_and_CPP)