Cant resolve DirectX symbol in engine sources UE 5.2

Cant resolve DirectX symbol in engine sources UE 5.2

In Rider 2022.3 and 2023.1
UE5.1-UE5.2 Code Analysis

EpicGamesLauncher side bug

This issue is caused by some weird bug on UnrealEngine/EpicGamesLauncher side:
While DirectX.Build.cs file is present on GitHub in 5.2 branch (https://github.com/EpicGames/UnrealEngine/blob/5.2/Engine/Source/ThirdParty/Windows/DirectX/DirectX.Build.cs), it is missing in Unreal Engine 5.2 installation from Epic Games Launcher. And other .Build.cs files are actually using methods from this DirectX class. That’s why Rider and ReSharper C++ highlight them as errors.
Hopefully this issue will be addressed by Epic Games in the bugfix.

As a workaround you may download this file from the official repository (by the link above) and place it in your Unreal Engine installation folder, for instance: C:\Program Files\Epic Games\UE_5.2\Engine\Source\ThirdParty\Windows\DirectX. After regenerating project files the issue will disappear.

Engine/Source/ThirdParty/Windows/DirectX/DirectX.Build.cs

// Copyright Epic Games, Inc. All Rights Reserved.

using System.IO;
using UnrealBuildTool;

public class DirectX : ModuleRules
{
	public static string GetDir(ReadOnlyTargetRules Target)
	{
		return Target.UEThirdPartySourceDirectory + "Windows/DirectX";
	}

	public static string GetIncludeDir(ReadOnlyTargetRules Target)
	{
		return GetDir(Target) + "/include";
	}

	public static string GetLibDir(ReadOnlyTargetRules Target)
	{
		return Path.Combine(GetDir(Target), "Lib", Target.Architecture.WindowsName) + "/";
	}

	public static string GetDllDir(ReadOnlyTargetRules Target)
	{
		return Path.Combine(Target.RelativeEnginePath, "Binaries/ThirdParty/Windows/DirectX", Target.Architecture.WindowsName) + "/";
	}

	public DirectX(ReadOnlyTargetRules Target) : base(Target)
	{
		Type = ModuleType.External;
	}
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值