You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编译NVIDIA焦散分支Unreal Engine后缺失dxgi.lib的技术求助

解决Unreal Engine NvRTX_Caustics分支编译时dxgi.lib缺失的问题

我之前帮开发者排查过不少UE4第三方库依赖的问题,针对你遇到的编译警告以及启动时cannot open input file 'ThirdParty\Windows\DirectX\Lib\x64\dxgi.lib'的错误,给你几个精准的解决方案:

方案一:安装并配置正确版本的DirectX SDK

UE4(尤其是较旧分支)依赖DirectX SDK June 2010版本,这个版本包含了编译所需的dxgi.lib文件:

  • 如果你还没安装这个SDK,先下载安装它;
  • 打开VS2017,进入工具 > 选项 > 项目和解决方案 > VC++目录,在库文件列表中添加SDK的x64库路径,默认路径是:
    C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x64
    

方案二:修复UE4 DX11模块的库引用配置

警告信息已经提示了问题根源——库路径未完全限定,我们可以修改DX11模块的构建文件来解决:

  1. 找到UE4引擎目录下的Engine/Source/Runtime/DX11/DX11.Build.cs文件;
  2. 打开后,在文件中添加DirectX SDK的系统库路径配置,替换或补充原有内容:
    using System;
    using System.IO;
    using UnrealBuildTool;
    
    public class DX11 : ModuleRules
    {
        public DX11(ReadOnlyTargetRules Target) : base(Target)
        {
            // 其他原有代码...
            
            // 添加这行来指定DirectX SDK的库路径
            PublicSystemLibraryPaths.Add(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86), "Microsoft DirectX SDK (June 2010)", "Lib", "x64"));
            
            // 保留原有的库引用(无需写完整路径)
            PublicAdditionalLibraries.Add("dxgi.lib");
        }
    }
    
  3. 保存文件后,清理UE4的编译缓存,再重新编译项目。

方案三:手动复制dxgi.lib到指定路径

如果上面的配置方法无效,可以直接手动补全缺失的库文件:

  • 从DirectX SDK的Lib\x64目录中找到dxgi.lib;
  • 在UE4项目的ThirdParty/Windows/DirectX/Lib/x64目录下(如果目录不存在就手动创建),粘贴这个文件。

额外注意事项

  • 确认VS2017的平台工具集设置正确:右键UE4项目,进入属性 > 常规 > 平台工具集,选择Visual Studio 2017 (v141);
  • 编译前清理缓存:可以运行UE4引擎目录下的Engine/Binaries/DotNET/UnrealBuildTool.exe -clean命令,彻底清理旧的编译中间文件,避免缓存干扰。

内容的提问来源于stack exchange,提问作者Bachalo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 07:57:07