簡體   English   中英

編譯沒有效果或d3dcompiler.h的DirectX 11着色器

[英]Compile DirectX 11 shader without effects or d3dcompiler.h

我試圖在大學計算機上使用Visual Studio 2010在Windows 7計算機上編譯DirectX 11着色器。 我可以在沒有效果的家用Windows 8計算機上使用d3dcompiler.h的內容很好地編譯它們,但是大學計算機似乎都缺少Effects和d3dcompiler.h。 我沒有管理權限,因此無法安裝SDK或類似軟件。 有編譯HLSL着色器的替代方法嗎? 還是我不得不以某種方式在自己的計算機上為VS2010編譯d3dcompiler lib文件並將其復制? 我問是因為我真的很想能夠在大學里從事我的游戲項目,但是事實證明,這比我預期的要困難得多。 謝謝你的幫助! :d

VS 2012和VS 2013包含Windows 8.x SDK,因此它們已經具有HLSL編譯器FXC.EXE工具和D3DCompile API。 VS 2010早於該集成,因此您必須使用舊版DirectX SDK *

如果您通常不使用Effects 11系統或D3DReflect,則可以在家中預編譯着色器。 您可以讓FXC生成帶有數據塊的C頭文件,也可以使二進制着色器文件。 這是DirectX Tool Kit所使用的技術,它包括所有預構建為C標頭的着色器,並且大多數游戲附帶將其所有着色器預構建為二進制文件。

使用Effects 11,您還可以預編譯着色器,但是它需要在運行時使用D3DCompile API進行着色器反射。

如果您的大學系統安裝了舊版DirectX SDK,則您的項目可能只是缺少VC ++目錄設置,無法進入那些包含/庫路徑。

腳注* =實際上,您也可以將Windows 8.x SDK與VS 2010一起使用,但大學計算機系統不太可能安裝它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM