2010-01-18 42 views
0

我一直在試圖在VLC播放器中構建HLSL着色器支持。由於MingW的d3d9.h中缺少實用方法來加載.fx文件並編譯着色器,所以我遇到了困難。所以在VLC開發者的建議下,我借用了Wine的DX9頭文件。使用Wine的DirectX頭文件在MingW下編譯

現在用d3dx9.h包括使我有很多形式的編譯器錯誤:

描述資源路徑位置類型 /mingw/lib/gcc/mingw32/3.4.5/../ .. /../../include/d3dx9core.h聲明參數「D3DXCheckVersion」,但沒有這樣的參數ShadedDXPlugin line 475 C/C++問題

熟悉MingW,GCC,DirectX和Wine的任何人都可以獲得一些關於獲取通過GCC工作的HLSL着色器?

回答

2

的VLC團隊再次與一些奇妙的意見回來,我想他們進入一些點計算器聲譽的激烈競爭:

1)編譯調用到DirectX着色器加載和組裝成單獨的基於MSVC的DLL可以訪問標準的微軟頭文件。然後從VLC鏈接到這個DLL。

2)插入GetProcAddress技巧,在d3d9.h中獲取D3DXAssembleShaderFromFile。 directx實用程序中的所述函數用於從HLSL生成裝配體着色器。

+0

只有2個投票才能解答這個問題... O_O它值得更多 – GameDeveloper 2015-01-23 22:09:04