Unreal Engine 5 插件:缺少导入:UnrealEditor-SteamVR.dll
Unreal Engine 5 Plugin: Missing import: UnrealEditor-SteamVR.dll
我有一个插件在启动我的项目时最初无法加载并出现此错误:The game module ‘PluginName’ could not be loaded. There may be an operating system error or the module may not be properly set up
查看日志文件时,我发现问题是由以下原因引起的:
Missing import: UnrealEditor-SteamVR.dll
如果我将此 DLL 从 Unreal Engine 5 个插件复制到我的插件的二进制文件夹中,项目将正常打开并加载插件。但是,Unreal Engine 4 不是这种情况,所以我想看看为什么我现在需要复制这个 DLL。
在我的插件 Build CS 文件中,我引用了 SteamVR。也许这需要更新?
PublicDependencyModuleNames.AddRange(
new string[]
{
"Core",
// ... add other public dependencies that you statically link with here ...
"CoreUObject", "Engine", "InputCore", "HeadMountedDisplay", "OpenVR"
}
);
PrivateDependencyModuleNames.AddRange(new string[] { "SteamVR" });
如何在不手动添加 DLL 的情况下让它工作?
我编辑了 .uplugin
文件并添加了 SteamVR
插件依赖项,这解决了问题。
"Plugins": [
{
"Name": "SteamVR",
"Enabled": true
}
]
编辑 1:
我发现尽管我的 C++ 中包含多个 Steam 库,但它是 SteamVRFunctionLibrary
的一个函数,负责在未启用 SteamVR
插件时导致启动时出现问题。
我有一个插件在启动我的项目时最初无法加载并出现此错误:The game module ‘PluginName’ could not be loaded. There may be an operating system error or the module may not be properly set up
查看日志文件时,我发现问题是由以下原因引起的:
Missing import: UnrealEditor-SteamVR.dll
如果我将此 DLL 从 Unreal Engine 5 个插件复制到我的插件的二进制文件夹中,项目将正常打开并加载插件。但是,Unreal Engine 4 不是这种情况,所以我想看看为什么我现在需要复制这个 DLL。
在我的插件 Build CS 文件中,我引用了 SteamVR。也许这需要更新?
PublicDependencyModuleNames.AddRange(
new string[]
{
"Core",
// ... add other public dependencies that you statically link with here ...
"CoreUObject", "Engine", "InputCore", "HeadMountedDisplay", "OpenVR"
}
);
PrivateDependencyModuleNames.AddRange(new string[] { "SteamVR" });
如何在不手动添加 DLL 的情况下让它工作?
我编辑了 .uplugin
文件并添加了 SteamVR
插件依赖项,这解决了问题。
"Plugins": [
{
"Name": "SteamVR",
"Enabled": true
}
]
编辑 1:
我发现尽管我的 C++ 中包含多个 Steam 库,但它是 SteamVRFunctionLibrary
的一个函数,负责在未启用 SteamVR
插件时导致启动时出现问题。