Переход с D3DX, D3DCompile не найден

до сих пор я успешно переходил с устаревших библиотек D3DX на новые, но с функцией D3DX11CompileFromFile я должен использовать новый D3DCompileFromFile. MSDN сообщает, что файл заголовка — D3DCompiler.h, а файл lib — D3DCompiler.lib. Интеллисенс забирает два, один из

C: \ Program Files (x86) \ Microsoft DirectX SDK (июнь 2010 г.) \ Lib \ x64

а другой из

C: \ Program Files (x86) \ Windows Kits \ 8.1 \ Lib \ winv6.3 \ um \ x64

введите описание изображения здесь

Если кто-нибудь знает, почему это происходит, я буду признателен за помощь. Я также попытался переключить заказы нескольких из них. Благодарю.

0

Решение

В идеале вы должны полностью удалить пути DirectX SDK (июнь 2010 г.) и просто использовать заголовок D3DCompile в Windows 8.1 SDK.

Если вам нужно использовать устаревший DirectX SDK (июнь 2010 г.), вы должны включить & пути к библиотекам после Windows 8.1 SDK. Это в основном работает, но есть сложности в отношении XAudio 2.7 более низкого уровня. Увидеть Zombie DirectX SDK для всех деталей.

Устаревшая копия DirectX SDK d3dcompiler.h не имеет FromFile аромат, который был добавлен для версии Windows 8.x SDK. В Windows 8.1 или Windows 10, D3DCompiler_47.DLL является частью ОС, но если вы хотите работать в Windows 7, вам нужно развернуть DLL вместе с приложением, которое вы можете просто скопировать из $(WindowsSdkDir)redist\d3d\<arch>\D3DCompile*.DLL, Увидеть HLSL, FXC и D3DCompile.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]