diff --git a/CMakeLists.txt b/CMakeLists.txt index 8b8385c06..a1af196f7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -58,12 +58,12 @@ option ( option ( ENABLE_RTTI "Enable C++ RTTI." - ON) + OFF) option ( ENABLE_EXCEPTIONS "Enable C++ Exceptions." - ON) + OFF) set (CARLA_WORKSPACE_PATH ${CMAKE_CURRENT_SOURCE_DIR}) set (CARLA_BUILD_PATH ${CMAKE_CURRENT_BINARY_DIR}) @@ -190,6 +190,7 @@ if (BUILD_LIBCARLA_SERVER) ${LIBCARLA_SOURCE_PATH}/carla/streaming/detail/*.h ${LIBCARLA_SOURCE_PATH}/carla/streaming/low_level/*.h ${LIBCARLA_SOURCE_PATH}/carla/multigpu/*.h + ${LIBCARLA_SOURCE_PATH}/compiler/*.h ) file ( @@ -224,7 +225,7 @@ if (BUILD_LIBCARLA_SERVER) ) install (TARGETS carla-server DESTINATION lib) - + foreach (HEADER ${LIBCARLA_SERVER_HEADERS}) cmake_path (GET HEADER PARENT_PATH HEADER_PARENT) cmake_path (RELATIVE_PATH HEADER_PARENT BASE_DIRECTORY ${LIBCARLA_SOURCE_PATH}/carla OUTPUT_VARIABLE HEADER_RELATIVE) @@ -276,6 +277,7 @@ if (BUILD_LIBCARLA_CLIENT) ${LIBCARLA_SOURCE_PATH}/carla/streaming/low_level/*.h ${LIBCARLA_SOURCE_PATH}/carla/multigpu/*.h ${LIBCARLA_SOURCE_PATH}/carla/trafficmanager/*.h + ${LIBCARLA_SOURCE_PATH}/compiler/*.h ) if (ENABLE_LIBCARLA_CLIENT_RSS) diff --git a/Configure.py b/Configure.py index b1f2c2766..05cbf1674 100644 --- a/Configure.py +++ b/Configure.py @@ -984,7 +984,8 @@ def BuildDependencies(task_graph : TaskGraph): '-DBUILD_GEOD=OFF', '-DBUILD_GIE=OFF', '-DBUILD_PROJ=OFF', - '-DBUILD_TESTING=OFF')) + '-DBUILD_TESTING=OFF', + install_path = PROJ_INSTALL_PATH)) task_graph.Add(Task.CreateCMakeConfigureDefault( 'configure-recast', [], diff --git a/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Carla.Build.cs b/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Carla.Build.cs index add1fa491..5bb87ae1c 100644 --- a/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Carla.Build.cs +++ b/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Carla.Build.cs @@ -22,6 +22,9 @@ public class Carla : [CommandLine("-ros2")] bool EnableRos2 = false; + [CommandLine("-unity")] + bool EnableUnityBuild = false; + [CommandLine("-carla-install-path")] string CarlaInstallPath = null; @@ -61,9 +64,26 @@ public class Carla : bEnableExceptions = bEnableExceptions || IsWindows; PrivatePCHHeaderFile = "Carla.h"; - if (EnableCarSim) + Action LogBuildFlagStatus = (name, enabled) => { - PublicDefinitions.Add("WITH_CARSIM"); + Console.WriteLine( + string.Format( + "{0} is {1}.", + name, + enabled ? "enabled" : "disabled")); + }; + + LogBuildFlagStatus("CarSim support", EnableCarSim); + LogBuildFlagStatus("Chrono support", EnableChrono); + LogBuildFlagStatus("PyTorch support", EnablePytorch); + LogBuildFlagStatus("ROS2 support", EnableRos2); + LogBuildFlagStatus("Unity build", EnableUnityBuild); + + bUseUnity = EnableUnityBuild; + + if (EnableCarSim) + { + PublicDefinitions.Add("WITH_CARSIM"); PrivateDefinitions.Add("WITH_CARSIM"); } @@ -80,15 +100,15 @@ public class Carla : } if (EnableRos2) - { - PublicDefinitions.Add("WITH_ROS2"); + { + PublicDefinitions.Add("WITH_ROS2"); PrivateDefinitions.Add("WITH_ROS2"); } - // PublicIncludePaths.AddRange(new string[] { }); - // PrivateIncludePaths.AddRange(new string[] { }); + // PublicIncludePaths.AddRange(new string[] { }); + // PrivateIncludePaths.AddRange(new string[] { }); - PublicDependencyModuleNames.AddRange(new string[] + PublicDependencyModuleNames.AddRange(new string[] { "Core", "RenderCore", @@ -211,13 +231,10 @@ public class Carla : PublicDefinitions.Add("BOOST_DISABLE_ABI_HEADERS"); PublicDefinitions.Add("BOOST_TYPE_INDEX_FORCE_NO_RTTI_COMPATIBILITY"); - if (!bEnableExceptions) - { - PublicDefinitions.Add("ASIO_NO_EXCEPTIONS"); - PublicDefinitions.Add("BOOST_NO_EXCEPTIONS"); - PublicDefinitions.Add("LIBCARLA_NO_EXCEPTIONS"); - PublicDefinitions.Add("PUGIXML_NO_EXCEPTIONS"); - } + PublicDefinitions.Add("ASIO_NO_EXCEPTIONS"); + PublicDefinitions.Add("BOOST_NO_EXCEPTIONS"); + PublicDefinitions.Add("LIBCARLA_NO_EXCEPTIONS"); + PublicDefinitions.Add("PUGIXML_NO_EXCEPTIONS"); } #if false diff --git a/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/WheeledVehicleMovementComponentNW.h b/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/WheeledVehicleMovementComponentNW.h index c3f8f7612..cf32810be 100644 --- a/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/WheeledVehicleMovementComponentNW.h +++ b/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/WheeledVehicleMovementComponentNW.h @@ -118,15 +118,15 @@ class CARLA_API UWheeledVehicleMovementComponentNW : public UChaosWheeledVehicle /** Engine */ UPROPERTY(EditAnywhere, Category = MechanicalSetup) - FVehicleNWEngineData EngineSetup; + FVehicleNWEngineData EngineSetupEXT; /** Differential */ UPROPERTY(EditAnywhere, Category = MechanicalSetup) - TArray DifferentialSetup; + TArray DifferentialSetupEXT; /** Transmission data */ UPROPERTY(EditAnywhere, Category = MechanicalSetup) - FVehicleNWTransmissionData TransmissionSetup; + FVehicleNWTransmissionData TransmissionSetupEXT; /** Maximum steering versus forward speed (km/h) */ UPROPERTY(EditAnywhere, Category = SteeringSetup) diff --git a/Unreal/CarlaUE4/Plugins/CarlaTools/Source/CarlaTools/CarlaTools.Build.cs b/Unreal/CarlaUE4/Plugins/CarlaTools/Source/CarlaTools/CarlaTools.Build.cs index 5585c758d..239d527e5 100644 --- a/Unreal/CarlaUE4/Plugins/CarlaTools/Source/CarlaTools/CarlaTools.Build.cs +++ b/Unreal/CarlaUE4/Plugins/CarlaTools/Source/CarlaTools/CarlaTools.Build.cs @@ -16,6 +16,9 @@ public class CarlaTools : [CommandLine("-nv-omniverse")] bool EnableNVIDIAOmniverse = false; + [CommandLine("-unity")] + bool EnableUnityBuild = false; + [CommandLine("-carla-install-path")] string CarlaInstallPath = null; @@ -84,6 +87,21 @@ public class CarlaTools : PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs; // PrivatePCHHeaderFile = "Carla.h"; + Action LogBuildFlagStatus = (name, enabled) => + { + Console.WriteLine( + string.Format( + "{0} is {1}.", + name, + enabled ? "enabled" : "disabled")); + }; + + LogBuildFlagStatus("Houdini support", EnableHoudini); + LogBuildFlagStatus("NVIDIA Omniverse support", EnableNVIDIAOmniverse); + LogBuildFlagStatus("Unity build", EnableUnityBuild); + + bUseUnity = EnableUnityBuild; + // PublicIncludePaths.AddRange(new string[] { }); // PrivateIncludePaths.AddRange(new string[] { }); @@ -203,13 +221,10 @@ public class CarlaTools : PublicDefinitions.Add("BOOST_DISABLE_ABI_HEADERS"); PublicDefinitions.Add("BOOST_TYPE_INDEX_FORCE_NO_RTTI_COMPATIBILITY"); - if (!bEnableExceptions) - { - PublicDefinitions.Add("ASIO_NO_EXCEPTIONS"); - PublicDefinitions.Add("BOOST_NO_EXCEPTIONS"); - PublicDefinitions.Add("LIBCARLA_NO_EXCEPTIONS"); - PublicDefinitions.Add("PUGIXML_NO_EXCEPTIONS"); - } + PublicDefinitions.Add("ASIO_NO_EXCEPTIONS"); + PublicDefinitions.Add("BOOST_NO_EXCEPTIONS"); + PublicDefinitions.Add("LIBCARLA_NO_EXCEPTIONS"); + PublicDefinitions.Add("PUGIXML_NO_EXCEPTIONS"); if (EnableHoudini) PublicDefinitions.Add("CARLA_HOUDINI_ENABLED"); diff --git a/Unreal/CarlaUE4/Plugins/CarlaTools/Source/CarlaTools/Private/HoudiniImportNodeWrapper.cpp b/Unreal/CarlaUE4/Plugins/CarlaTools/Source/CarlaTools/Private/HoudiniImportNodeWrapper.cpp index a6d149051..08e34746e 100644 --- a/Unreal/CarlaUE4/Plugins/CarlaTools/Source/CarlaTools/Private/HoudiniImportNodeWrapper.cpp +++ b/Unreal/CarlaUE4/Plugins/CarlaTools/Source/CarlaTools/Private/HoudiniImportNodeWrapper.cpp @@ -4,7 +4,7 @@ // This work is licensed under the terms of the MIT license. // For a copy, see . -#ifdef CARLA_HOUDINI_ENABLED +/* #include "HoudiniImportNodeWrapper.h" #include "HoudiniAsset.h" @@ -84,4 +84,4 @@ void UHoudiniImportNodeWrapper::HandleFailed( } RemoveFromRoot(); } -#endif \ No newline at end of file +*/ \ No newline at end of file diff --git a/Unreal/CarlaUE4/Plugins/CarlaTools/Source/CarlaTools/Public/HoudiniImportNodeWrapper.h b/Unreal/CarlaUE4/Plugins/CarlaTools/Source/CarlaTools/Public/HoudiniImportNodeWrapper.h index b733bfa32..85aed32c3 100644 --- a/Unreal/CarlaUE4/Plugins/CarlaTools/Source/CarlaTools/Public/HoudiniImportNodeWrapper.h +++ b/Unreal/CarlaUE4/Plugins/CarlaTools/Source/CarlaTools/Public/HoudiniImportNodeWrapper.h @@ -5,7 +5,7 @@ // For a copy, see . #pragma once -#ifdef CARLA_HOUDINI_ENABLED +/* #include "CoreMinimal.h" #include "Kismet/BlueprintAsyncActionBase.h" #include "HoudiniPublicAPIProcessHDANode.h" @@ -61,4 +61,5 @@ private: UHoudiniPublicAPIProcessHDANode* HDANode; }; -#endif \ No newline at end of file +#endif +*/ \ No newline at end of file