Direct3D11學習:(零)常見問題及解決方法整理


轉載請注明出處:http://www.cnblogs.com/Ray1024
 
一、概述
在D3D11學習的這個系列中,單獨寫一篇文章來記錄自己學習過程中遇到的問題及最后的解決方法。
這篇文章的目的主要是把自己在學習D3D11過程中遇到的問題整理下來,方便自己以后查看,也幫助一些新手更快地解決問題。
 
二、問題與解決方法
2.1 安裝DirectX SDK過程中出現安裝錯誤,Error Code:s1023
問題如圖:
問題分析:
其實根本原因在於Microsoft Visual C++ 2010 Redistributable這個組件,打開控制面板>程序和功能面板,你會看到"Microsoft Visual C++ 2010 x86 Redistributable - 1010.0.40219"這一項組件。如下圖:
而June 2010 DirectX SDK需要安裝“Microsoft Visual C++ 2010 x86 Redistributable - 1010.0.30319”版本的組件,計算機中已經存在的此組件的新版本,所以安裝出現s1023錯誤。
 
解決步驟:
(1)要解決這個問題,在June 2010 DirectX SDK安裝之前,卸載計算機中存在的所有版本的Visual C++ 2010 Redistributable組件。
可以在程序和功能面板中直接卸載。 或者,也可以在命令行中運行以下命令卸載:
  MsiExec.exe /passive /X{F0C3E5D1-1ADE-321E-8167-68EF0DE699A5}
  MsiExec.exe /passive /X{1D8E6291-B0D5-35EC-8441-6616F567A0F7}
(2)卸載完上面的組件之后,就可以安裝June 2010 DirectX SDK了。
(3)如果你需要新版本的Visual C++ 2010 Redistributable組件,也可以再安裝回去。
 
2.2 程序調試運行會出現錯誤:d3d11CreateDevice Failed?
問題分析:
創建設備和上下文的函數為D3D11CreateDevice,這個函數的參數Flags表示可選的設備創建標志值。當以release模式生成程序時,該參數通常設為0(無附加標志值);當以debug模式生成程序時,該參數應設為:D3D11_CREATE_DEVICE_DEBUG,用來激活調試層。
激活了調試層之后,Direct3D會向VC++的輸出窗口發送調試信息。
但是想要使用調試層這個工具,我們需要知道:調試層這個工具是存在於Graphics Tools這個組件中的。我們必須先安裝Graphics Tools這個組件。
解決方法:
方法1. Win10系統安裝Graphics Tools
打開 開始菜單>設置>系統>應用和功能>管理可選功能>添加功能,找到Graphics Tools選擇就可以了(中文系統中的名字是圖形工具)。
方法2. Visual Studio 2015
安裝vs2015,也會自動安裝Graphics Tools這個組件的。
方法3. Visual Studio 2013
Visual Studio 2013的update5版本將自動的在Windows 10上配置Graphics Tools可選功能。
方法4:
如果你不想使用調試層這個工具,直接在D3D11CreateDevice函數第四個參數設置為0。
 
 
三、結語
另外,這篇文章會不定時更新。把自己學習過程中遇到的一些新問題也會加入到這里。
希望這篇文章可以幫助到大家。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM