【问题标题】:DirectX11 Frank Luna - Error LNK1104 cannot open file 'Effects11d.lib' ParticleSystemDirectX11 Frank Luna - 错误 LNK1104 无法打开文件“Effects11d.lib”粒子系统
【发布时间】:2018-01-03 18:11:51
【问题描述】:

试图让 Frank Lunas http://www.d3dcoder.net/d3d11.htm 示例代码正常工作。

运行第 20 章项目,我得到:

Error   LNK1104 cannot open file 'Effects11d.lib' ParticleSystem    

感谢任何帮助!

【问题讨论】:

  • 您是否将包含此文件的文件夹添加到您的链接器设置中?这个文件存在吗?你是混合 32 位和 64 位的吗?请注意,Effects11d.lib 只能用于调试版本。
  • DXUT\Core;DXUT\Optional;C:\Users\Ciaran\Desktop\Common;%(AdditionalIncludeDirectories) 它在那里并且在调试模式下构建。 (我可以在 \Common 目录中看到该文件)
  • 也许您正在混合使用 32 位和 64 位。您不能将 32 位库与 64 位 exe 或 viseversa 链接。
  • 这里是顶级配置属性:image

标签: c++ windows directx game-engine directx-11


【解决方案1】:

您可能缺少他的Common 文件夹的LIBRARY 搜索路径。这应该在链接器的 Additional Library Directories 属性页下的项目属性中指定。

请注意,这还假设您只构建 32 位 (x86) 版本的代码,因为他没有提供 64 位版本的 Effects11?.lib

Direct3D 11 的效果 旨在由开发人员构建,而不是被视为“系统库”。您可以并且应该自己从源代码构建它。见GitHub。或者,您可以使用为 VS 2015 构建的 NuGet 包。

另外请注意,弗兰克的书有点过时,因为它是在 DirectX SDK 本身被声明为end-of-life 之前出版的。请参阅this blog post 了解一些注释。另外值得一提的是,Effects 本身是“原样”的,并且 HLSL 编译器对 fx_5_0 配置文件的支持本身已被弃用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-20
    • 2019-10-27
    • 2019-05-14
    • 2021-06-12
    • 2015-03-02
    相关资源
    最近更新 更多