Direct3D 9 常見故障排除
Source:SDK\Troubleshooting (Direct3D 9)
I.設(shè)備故障創(chuàng)建設(shè)備失敗時,檢查下列常見錯誤
確認(rèn)設(shè)備特性,特別是深度緩存
檢查錯誤碼,D3DERR_OUTOFVIDEOMEMORY 比較常見
使用運(yùn)行時debug庫并查看調(diào)試器的輸出信息
II.使用點亮頂點的方式將渲染狀態(tài)D3DRS_LIGHTING 設(shè)為FALSE即可讓程序點亮頂點了。默認(rèn)情況下,當(dāng)光照打開了后,系統(tǒng)會將所有不包含法向量的頂點顏色設(shè)為黑色,即是輸入的頂點包含非零的顏色值也不例外,而且這些頂點的任何顏色數(shù)據(jù)傳遞到Direct3D的時候也不會丟失。
如果程序黑屏了,檢查如下常見錯誤.
- 確認(rèn)你的三角形沒有退化
- 確認(rèn)你的三角形沒有被裁剪消除
- 確認(rèn)你的變換總是固定不變的
- 檢查你的視口設(shè)置,確認(rèn)三角形是可見的