October3d55/M/PICOXRPlugin/Source/PICOXRHMD/PICOXRHMD.Build.cs

123 lines
4.5 KiB
C#
Raw Normal View History

2025-07-29 14:53:32 +08:00
// Copyright PICO Technology Co., Ltd. All rights reserved.
// This plugin incorporates portions of the Unreal® Engine. Unreal® is a trademark or registered trademark of Epic Games, Inc. in the United States of America and elsewhere.
// Copyright Epic Games, Inc. All Rights Reserved.
using UnrealBuildTool;
using System.IO;
public class PICOXRHMD : ModuleRules
{
public PICOXRHMD(ReadOnlyTargetRules Target) : base(Target)
{
var EngineDir = Path.GetFullPath(Target.RelativeEnginePath);
PrivateIncludePaths.AddRange(
new[] {
Path.Combine(EngineDir, "Source/Runtime/Renderer/Private"),
Path.Combine(EngineDir, "Source/Runtime/Renderer/Private"),
Path.Combine(EngineDir, "Source/Runtime/OpenGLDrv/Private"),
Path.Combine(EngineDir, "Source/Runtime/VulkanRHI/Private"),
Path.Combine(EngineDir, "Source/Runtime/Engine/Classes/Components"),
Path.Combine(EngineDir, "Source/Runtime/Engine/Classes/Kismet"),
});
PrivateIncludePaths.AddRange(
new[] {
"PICOXRInput/Private",
});
PublicIncludePathModuleNames.AddRange(
new[] {
"Launch",
"ProceduralMeshComponent",
"AndroidPermission",
"XRBase"
});
if (Target.Platform != UnrealTargetPlatform.Win64)
{
PrivateIncludePaths.Add(Path.Combine(EngineDir, "Source/Runtime/VulkanRHI/Private/") + Target.Platform);
}
PrivateDependencyModuleNames.AddRange(
new[]
{
"Core",
"CoreUObject",
"Engine",
"InputCore",
"RHI",
"RenderCore",
"Renderer",
"Slate",
"SlateCore",
"ImageWrapper",
"MediaAssets",
"Analytics",
"OpenGLDrv",
"InputDevice",
"VulkanRHI",
"PXRPlugin",
"ProceduralMeshComponent",
"Projects",
"DeveloperSettings",
"XRBase"
}
);
PublicDependencyModuleNames.AddRange(
new[]
{
"HeadMountedDisplay",
"EyeTracker"//
});
if (Target.bBuildEditor == true)
{
PrivateDependencyModuleNames.Add("UnrealEd");
}
AddEngineThirdPartyPrivateStaticDependencies(Target, "OpenGL");
if (Target.Platform == UnrealTargetPlatform.Win64)
{
// D3D
{
PrivateDependencyModuleNames.AddRange(
new string[]
{
"D3D11RHI",
"D3D12RHI",
});
PublicIncludePaths.AddRange(
new string[]
{
Path.Combine(EngineDir,"Source/Runtime/Windows/D3D11RHI/Private"),
Path.Combine(EngineDir,"Source/Runtime/Windows/D3D11RHI/Private/Windows"),
Path.Combine(EngineDir,"Source/Runtime/D3D12RHI/Private"),
Path.Combine(EngineDir,"Source/Runtime/D3D12RHI/Private/Windows"),
});
AddEngineThirdPartyPrivateStaticDependencies(Target, "DX11");
AddEngineThirdPartyPrivateStaticDependencies(Target, "DX12");
AddEngineThirdPartyPrivateStaticDependencies(Target, "NVAPI");
AddEngineThirdPartyPrivateStaticDependencies(Target, "DX11Audio");
AddEngineThirdPartyPrivateStaticDependencies(Target, "DirectSound");
AddEngineThirdPartyPrivateStaticDependencies(Target, "NVAftermath");
AddEngineThirdPartyPrivateStaticDependencies(Target, "IntelExtensionsFramework");
}
}
else if (Target.Platform == UnrealTargetPlatform.Android)
{
// Vulkan
AddEngineThirdPartyPrivateStaticDependencies(Target, "Vulkan");
{
string PluginPath = Utils.MakePathRelativeTo(ModuleDirectory, Target.RelativeEnginePath);
AdditionalPropertiesForReceipt.Add("AndroidPlugin", Path.Combine(PluginPath, "PICOXR_UPL.xml"));
}
}
}
}