Files
UnrealEngineUWP/Engine/Source/Runtime/AIModule/Classes/Perception/AIPerceptionSystem.h

231 lines
8.0 KiB
C
Raw Normal View History

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
#include "CoreMinimal.h"
#include "Stats/Stats.h"
#include "UObject/ObjectMacros.h"
#include "UObject/UObjectGlobals.h"
#include "UObject/Object.h"
#include "Templates/SubclassOf.h"
#include "Engine/EngineTypes.h"
#include "Engine/World.h"
#include "Perception/AIPerceptionTypes.h"
#include "Perception/AISense.h"
#include "AISubsystem.h"
#include "AIPerceptionSystem.generated.h"
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
class UAIPerceptionComponent;
class UAISenseEvent;
AIMODULE_API DECLARE_LOG_CATEGORY_EXTERN(LogAIPerception, Warning, All);
class APawn;
/**
* By design checks perception between hostile teams
*/
UCLASS(ClassGroup=AI, config=Game, defaultconfig)
class AIMODULE_API UAIPerceptionSystem : public UAISubsystem
{
GENERATED_BODY()
public:
UAIPerceptionSystem(const FObjectInitializer& ObjectInitializer = FObjectInitializer::Get());
// FTickableGameObject begin
virtual void Tick(float DeltaTime) override;
virtual TStatId GetStatId() const override;
// FTickableGameObject end
protected:
AIPerception::FListenerMap ListenerContainer;
UPROPERTY()
TArray<TObjectPtr<UAISense>> Senses;
UPROPERTY(config, EditAnywhere, Category = Perception)
float PerceptionAgingRate;
FActorEndPlaySignature::FDelegate StimuliSourceEndPlayDelegate;
// not a UPROPERTY on purpose so that we have a control over when stuff gets removed from the map
TMap<const AActor*, FPerceptionStimuliSource> RegisteredStimuliSources;
#if WITH_EDITORONLY_DATA
UE_DEPRECATED(4.25, "This property will be removed in future versions. UnregisterSource is called by AActor.OnEndPlay delegate and will perform the cleanup.")
uint32 bStimuliSourcesRefreshRequired : 1;
#endif
uint32 bHandlePawnNotification : 1;
struct FDelayedStimulus
{
float DeliveryTimestamp;
FPerceptionListenerID ListenerId;
TWeakObjectPtr<AActor> Instigator;
FAIStimulus Stimulus;
};
TArray<FDelayedStimulus> DelayedStimuli;
Merging using UE4-Fortnite-To-UE4 from CL 2261973 Includes the following engine-level changes (among others; biggest change is enabling world assets by default): CL 2252857 added dynamic allocations for path finding, removed hardcoded limit of 128 polys in path corridor CL 2256142 Added support for native arrays in JSON object converter. - Permissive in treating arrays of size 1 and scalars as equivalent - Excess elements in JSON are ignored. Serialization succeeds but a warning is logged CL 2256073 Fixed a bug in ARecastNavMesh::BatchRaycast resulting in NaN hit locations CL 2253797 #UE4 More aggressively setting RF_Public and RF_Standalone flags on maps and ensuring world names match package names. This is necessary because umaps are currently being managed outside of the content browser and it is causing a few issues. Also, packages containing maps now synthesize asset data when the package contains absolutely no asset data (probably because the UWorld in it was not RF_Public at the time it was saved due to a previous bug). CL 2258142 #UE4 Added a GC during map load that reclaims memory allocated during load/init. This is needed to finish the load on low-memory devices in games that allocate more memory after load. CL 2247003 Added homing to ProjectileMovementComponent - Homing requires both a bool and a target component to be set, the strength is determined by a customizable variable - Both homing and gravity are now applied in the new virtual function "CalculateAcceleration" CL 2247249 Moved the homing modification to acceleration occur in a separate function specifically for homing CL 2257043 - Guard net dormancy calls against executing on clients, based on thread with DaveR and JohnP; This particular case was the result of an intentionally client-authoritative actor calling the dormancy functions via inheritance CL 2245629 #UE4 - fixed json TryGetNumber to round negatives appropriately CL 2255312 #UE4 Enabling World Assets by default. CL 2260956 Analytics ET now loads HTTP at StartupModule so the module will be available during ShutdownModule to flush events CL 2245571 GenericTeamAgentInterface can now retrieve attitude of an agent towards a given actor #UE4 - Made PerceptionSystem's sight sense take advantage of that CL 2246897 Fixed perception listeners not being removed from the PerceptionSystem on Owner's end play #UE4 - addresses TTP#343392 CL 2260634 added more debug data for NaN in crowd simulation CL 2248387 Added possibility to debug multiple EQS queries with GameplayDebugger. #ue4 Fixed network replication from bandwidth point of view for data in GameplayDebugger. #ue4 CL 2253281 Added additional information to the visual logger for UBTCompositeNode::DoDecoratorsAllowExecution - We now keep track of whether a decorator allows execution, in addition to the existing log for not allowing execution CL 2255310 #UE4 The world browser module now listens to WorldAdded/WorldDestroyed events instead of WorldInit/WorldCleanup events. Worlds can be initialized without being the editor world and this handles that case. CL 2258256 #UE4 Replacing the SOpenLevelDialog with a new generic SAssetDialog. This dialog will be used as a generic Open or Save As dialog for assets. [CL 2266822 by Billy Bramer in Main branch]
2014-08-21 20:30:51 -04:00
struct FPerceptionSourceRegistration
{
FAISenseID SenseID;
Merging using UE4-Fortnite-To-UE4 from CL 2261973 Includes the following engine-level changes (among others; biggest change is enabling world assets by default): CL 2252857 added dynamic allocations for path finding, removed hardcoded limit of 128 polys in path corridor CL 2256142 Added support for native arrays in JSON object converter. - Permissive in treating arrays of size 1 and scalars as equivalent - Excess elements in JSON are ignored. Serialization succeeds but a warning is logged CL 2256073 Fixed a bug in ARecastNavMesh::BatchRaycast resulting in NaN hit locations CL 2253797 #UE4 More aggressively setting RF_Public and RF_Standalone flags on maps and ensuring world names match package names. This is necessary because umaps are currently being managed outside of the content browser and it is causing a few issues. Also, packages containing maps now synthesize asset data when the package contains absolutely no asset data (probably because the UWorld in it was not RF_Public at the time it was saved due to a previous bug). CL 2258142 #UE4 Added a GC during map load that reclaims memory allocated during load/init. This is needed to finish the load on low-memory devices in games that allocate more memory after load. CL 2247003 Added homing to ProjectileMovementComponent - Homing requires both a bool and a target component to be set, the strength is determined by a customizable variable - Both homing and gravity are now applied in the new virtual function "CalculateAcceleration" CL 2247249 Moved the homing modification to acceleration occur in a separate function specifically for homing CL 2257043 - Guard net dormancy calls against executing on clients, based on thread with DaveR and JohnP; This particular case was the result of an intentionally client-authoritative actor calling the dormancy functions via inheritance CL 2245629 #UE4 - fixed json TryGetNumber to round negatives appropriately CL 2255312 #UE4 Enabling World Assets by default. CL 2260956 Analytics ET now loads HTTP at StartupModule so the module will be available during ShutdownModule to flush events CL 2245571 GenericTeamAgentInterface can now retrieve attitude of an agent towards a given actor #UE4 - Made PerceptionSystem's sight sense take advantage of that CL 2246897 Fixed perception listeners not being removed from the PerceptionSystem on Owner's end play #UE4 - addresses TTP#343392 CL 2260634 added more debug data for NaN in crowd simulation CL 2248387 Added possibility to debug multiple EQS queries with GameplayDebugger. #ue4 Fixed network replication from bandwidth point of view for data in GameplayDebugger. #ue4 CL 2253281 Added additional information to the visual logger for UBTCompositeNode::DoDecoratorsAllowExecution - We now keep track of whether a decorator allows execution, in addition to the existing log for not allowing execution CL 2255310 #UE4 The world browser module now listens to WorldAdded/WorldDestroyed events instead of WorldInit/WorldCleanup events. Worlds can be initialized without being the editor world and this handles that case. CL 2258256 #UE4 Replacing the SOpenLevelDialog with a new generic SAssetDialog. This dialog will be used as a generic Open or Save As dialog for assets. [CL 2266822 by Billy Bramer in Main branch]
2014-08-21 20:30:51 -04:00
TWeakObjectPtr<AActor> Source;
FPerceptionSourceRegistration(FAISenseID InSenseID, AActor* SourceActor)
: SenseID(InSenseID), Source(SourceActor)
Merging using UE4-Fortnite-To-UE4 from CL 2261973 Includes the following engine-level changes (among others; biggest change is enabling world assets by default): CL 2252857 added dynamic allocations for path finding, removed hardcoded limit of 128 polys in path corridor CL 2256142 Added support for native arrays in JSON object converter. - Permissive in treating arrays of size 1 and scalars as equivalent - Excess elements in JSON are ignored. Serialization succeeds but a warning is logged CL 2256073 Fixed a bug in ARecastNavMesh::BatchRaycast resulting in NaN hit locations CL 2253797 #UE4 More aggressively setting RF_Public and RF_Standalone flags on maps and ensuring world names match package names. This is necessary because umaps are currently being managed outside of the content browser and it is causing a few issues. Also, packages containing maps now synthesize asset data when the package contains absolutely no asset data (probably because the UWorld in it was not RF_Public at the time it was saved due to a previous bug). CL 2258142 #UE4 Added a GC during map load that reclaims memory allocated during load/init. This is needed to finish the load on low-memory devices in games that allocate more memory after load. CL 2247003 Added homing to ProjectileMovementComponent - Homing requires both a bool and a target component to be set, the strength is determined by a customizable variable - Both homing and gravity are now applied in the new virtual function "CalculateAcceleration" CL 2247249 Moved the homing modification to acceleration occur in a separate function specifically for homing CL 2257043 - Guard net dormancy calls against executing on clients, based on thread with DaveR and JohnP; This particular case was the result of an intentionally client-authoritative actor calling the dormancy functions via inheritance CL 2245629 #UE4 - fixed json TryGetNumber to round negatives appropriately CL 2255312 #UE4 Enabling World Assets by default. CL 2260956 Analytics ET now loads HTTP at StartupModule so the module will be available during ShutdownModule to flush events CL 2245571 GenericTeamAgentInterface can now retrieve attitude of an agent towards a given actor #UE4 - Made PerceptionSystem's sight sense take advantage of that CL 2246897 Fixed perception listeners not being removed from the PerceptionSystem on Owner's end play #UE4 - addresses TTP#343392 CL 2260634 added more debug data for NaN in crowd simulation CL 2248387 Added possibility to debug multiple EQS queries with GameplayDebugger. #ue4 Fixed network replication from bandwidth point of view for data in GameplayDebugger. #ue4 CL 2253281 Added additional information to the visual logger for UBTCompositeNode::DoDecoratorsAllowExecution - We now keep track of whether a decorator allows execution, in addition to the existing log for not allowing execution CL 2255310 #UE4 The world browser module now listens to WorldAdded/WorldDestroyed events instead of WorldInit/WorldCleanup events. Worlds can be initialized without being the editor world and this handles that case. CL 2258256 #UE4 Replacing the SOpenLevelDialog with a new generic SAssetDialog. This dialog will be used as a generic Open or Save As dialog for assets. [CL 2266822 by Billy Bramer in Main branch]
2014-08-21 20:30:51 -04:00
{}
FORCEINLINE bool operator==(const FPerceptionSourceRegistration& Other) const
{
return SenseID == Other.SenseID && Source == Other.Source;
}
Merging using UE4-Fortnite-To-UE4 from CL 2261973 Includes the following engine-level changes (among others; biggest change is enabling world assets by default): CL 2252857 added dynamic allocations for path finding, removed hardcoded limit of 128 polys in path corridor CL 2256142 Added support for native arrays in JSON object converter. - Permissive in treating arrays of size 1 and scalars as equivalent - Excess elements in JSON are ignored. Serialization succeeds but a warning is logged CL 2256073 Fixed a bug in ARecastNavMesh::BatchRaycast resulting in NaN hit locations CL 2253797 #UE4 More aggressively setting RF_Public and RF_Standalone flags on maps and ensuring world names match package names. This is necessary because umaps are currently being managed outside of the content browser and it is causing a few issues. Also, packages containing maps now synthesize asset data when the package contains absolutely no asset data (probably because the UWorld in it was not RF_Public at the time it was saved due to a previous bug). CL 2258142 #UE4 Added a GC during map load that reclaims memory allocated during load/init. This is needed to finish the load on low-memory devices in games that allocate more memory after load. CL 2247003 Added homing to ProjectileMovementComponent - Homing requires both a bool and a target component to be set, the strength is determined by a customizable variable - Both homing and gravity are now applied in the new virtual function "CalculateAcceleration" CL 2247249 Moved the homing modification to acceleration occur in a separate function specifically for homing CL 2257043 - Guard net dormancy calls against executing on clients, based on thread with DaveR and JohnP; This particular case was the result of an intentionally client-authoritative actor calling the dormancy functions via inheritance CL 2245629 #UE4 - fixed json TryGetNumber to round negatives appropriately CL 2255312 #UE4 Enabling World Assets by default. CL 2260956 Analytics ET now loads HTTP at StartupModule so the module will be available during ShutdownModule to flush events CL 2245571 GenericTeamAgentInterface can now retrieve attitude of an agent towards a given actor #UE4 - Made PerceptionSystem's sight sense take advantage of that CL 2246897 Fixed perception listeners not being removed from the PerceptionSystem on Owner's end play #UE4 - addresses TTP#343392 CL 2260634 added more debug data for NaN in crowd simulation CL 2248387 Added possibility to debug multiple EQS queries with GameplayDebugger. #ue4 Fixed network replication from bandwidth point of view for data in GameplayDebugger. #ue4 CL 2253281 Added additional information to the visual logger for UBTCompositeNode::DoDecoratorsAllowExecution - We now keep track of whether a decorator allows execution, in addition to the existing log for not allowing execution CL 2255310 #UE4 The world browser module now listens to WorldAdded/WorldDestroyed events instead of WorldInit/WorldCleanup events. Worlds can be initialized without being the editor world and this handles that case. CL 2258256 #UE4 Replacing the SOpenLevelDialog with a new generic SAssetDialog. This dialog will be used as a generic Open or Save As dialog for assets. [CL 2266822 by Billy Bramer in Main branch]
2014-08-21 20:30:51 -04:00
};
TArray<FPerceptionSourceRegistration> SourcesToRegister;
public:
FORCEINLINE bool IsSenseInstantiated(const FAISenseID& SenseID) const { return SenseID.IsValid() && Senses.IsValidIndex(SenseID) && Senses[SenseID] != nullptr; }
/** Registers listener if not registered */
void UpdateListener(UAIPerceptionComponent& Listener);
void UnregisterListener(UAIPerceptionComponent& Listener);
template<typename FEventClass, typename FSenseClass = typename FEventClass::FSenseClass>
void OnEvent(const FEventClass& Event)
{
const FAISenseID SenseID = UAISense::GetSenseID<FSenseClass>();
if (Senses.IsValidIndex(SenseID) && Senses[SenseID] != nullptr)
{
((FSenseClass*)Senses[SenseID])->RegisterEvent(Event);
}
// otherwise there's no one interested in this event, skip it.
}
template<typename FEventClass, typename FSenseClass = typename FEventClass::FSenseClass>
void OnEventsBatch(const TArray<FEventClass>& Events)
{
if (Events.Num() > 0)
{
const FAISenseID SenseID = UAISense::GetSenseID<FSenseClass>();
if (Senses.IsValidIndex(SenseID) && Senses[SenseID] != nullptr)
{
((FSenseClass*)Senses[SenseID])->RegisterEventsBatch(Events);
}
}
// otherwise there's no one interested in this event, skip it.
}
template<typename FEventClass, typename FSenseClass = typename FEventClass::FSenseClass>
static void OnEvent(UWorld* World, const FEventClass& Event)
{
UAIPerceptionSystem* PerceptionSys = GetCurrent(World);
if (PerceptionSys != NULL)
{
PerceptionSys->OnEvent<FEventClass, FSenseClass>(Event);
}
}
UFUNCTION(BlueprintCallable, Category = "AI|Perception")
void ReportEvent(UAISenseEvent* PerceptionEvent);
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3431384) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3252833 on 2017/01/10 by Ori.Cohen Refactor constraint so that it can be used for external solvers. (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework)) Change 3256288 on 2017/01/12 by Ori.Cohen Undo constraint refactor as we found a way around it and it made the code much harder to read/debug Change 3373195 on 2017/03/30 by Mike.Beach For nativization, changing it so we key off of the target platform-info struct instead of the platform (in preparation for defining the nativized plugin's platform whitelist). Change 3381178 on 2017/04/05 by Dan.Oconnor Make sure we don't inherit the NATIVE func flag when generating skeleton functions, also make sure all bojects outer'd to the skeleton class are marked transient #jira UE-43616 Change 3381532 on 2017/04/05 by Marc.Audy (4.16) Fix various cases where built lighting on child actors could be lost when loading a level #jira UE-43553 Change 3381586 on 2017/04/05 by Mike.Beach Now generating TArrayCaster conversions for nativized UClass arrays that need it (to handle different TSubclassOf arrays). #jira UE-42676, UE-43257 Change 3381682 on 2017/04/05 by mason.seay Some more changes to test map Change 3381844 on 2017/04/05 by Dan.Oconnor Match existing logic for CPF_ReturnParm/CPF_OutParm. Fixes compilation error in BP_TurbineBlades when using compilation manager Change 3382054 on 2017/04/05 by Zak.Middleton #ue4 - Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #jira UE-30998 Change 3382703 on 2017/04/06 by Lukasz.Furman fixed missing links between navmesh polys when there are more than 4 neighbor connections #jira UE-43524 Change 3383357 on 2017/04/06 by Marc.Audy (4.16) Make SetHiddenInGame propagate consistently with SetVisibility #jira UE-43709 Change 3383359 on 2017/04/06 by Dan.Oconnor Fix last errant SKEL reference when cooking Odin Change 3383591 on 2017/04/06 by Mike.Beach Prevent users from setting object variables as 'config' properties (disallowed by UHT). This prevents some errors that could happen later when users nativize the Blueprint. #jira UE-42085 Change 3384762 on 2017/04/07 by Zak.Middleton #ue4 - Fix SpringArmComponent not restoring relative transform when bUsePawnControlRotation is turned off. Fixes the editor interaction ignoring transform of the component in the viewport after bUsePawnControlRotation is toggled on then off, since by then the world transform had been overwritten (from tick in editor) and nothing would drive transform changes from the editable value. Toggling bUsePawnControlRotation off at runtime now restores the rotation to the initial relative rotation, not stomping it with the current pawn rotation, allowing toggling between the editable/desired base rotation and the control rotation. #jira UE-24850 Change 3384948 on 2017/04/07 by Dan.Oconnor Prevent GForceDisableBlueprintCompileOnLoad from causing all sorts of badness when dependencies are loaded as part of a Diff operation. Instead of setting a global flag we flag the package as LOAD_DisableCompileOnLoad Change 3385267 on 2017/04/07 by Michael.Noland Graph Editing: Pushed some node diffing code down from UAIGraphNode into UEdGraphNode so nodes with details panel properties will diff correctly (e.g., various animation nodes and BP switch nodes) #jira UE-21724 Change 3385473 on 2017/04/07 by Phillip.Kavan #jira UE-43067 - Fix broken pin wires after an Expand Node operation, along with some misc. cleanup. Change summary: - Fixed to use correct string for "Expand Node" transaction name. - Modified FBlueprintEditor::OnExpandNodes() to consolidate some redundant code. - Fixed to generate a unique node GUID for cases where the source graph is not removed after expansion. Change 3385583 on 2017/04/07 by Dan.Oconnor Handle CreatePropertyOnScope nullptr return values (happens for structs missing a struct property) #jira UE-43746 Change 3386581 on 2017/04/10 by Michael.Noland Blueprints: Further hardening FBlueprintActionInfo::GetOwnerClass() #jira UE-43824 Change 3386615 on 2017/04/10 by Marc.Audy Instanced properties can now properly be set on a per-instance basis in blueprint added components. #jira UE-42066 Change 3387000 on 2017/04/10 by Marc.Audy Fix includes for CIS Change 3387229 on 2017/04/10 by mason.seay More changes to TM-Gameplay Added Save Game test (with blueprint) Tick Interval test (with blueprint) BP logic cleanup Level organization Change 3388437 on 2017/04/11 by Mike.Beach Adding support for map/set literals in the backend (so you can use set nodes for structs containing sets/maps, without having to connect a RHS input - resets to struct defaults). #jira UE-42617 Change 3388532 on 2017/04/11 by mason.seay Submitting latest changes for crash repro Change 3389026 on 2017/04/11 by Ben.Zeigler Performance and bug fixes for incremetal cooking with asset registry, duplicate of several changes made on //Fortnite/Main Fix it so AssetRegistry.ScanPathsAndFilesSynchronous won't scan subdirectories inside already scanned directories, this cuts down on the number of cache files Fix 2 second stall when shutting down AssetSourceFilenameCache if it had never been previously created Change 3389163 on 2017/04/11 by Ben.Zeigler #jira UE-42922 Fix it so connecting function input node output pins does not clear default value, we only want to clear the value when connecting an input pin. Properly testing this fix depends on UE-43883 Change 3389205 on 2017/04/11 by Marc.Audy Protect against a handful of GEditor usages that can now be hit in standalone Change 3389220 on 2017/04/11 by Marc.Audy Don't borrow ClassWithin to masquerade as ParentClass during compilation and instead just set the super struct immediately Change 3389222 on 2017/04/11 by Michael.Noland Framework: Adding a cvar (t.TickComponentLatentActionsWithTheComponent) to allow users to revert to the old behavior on when component latent actions tick - Non-zero values behave the same way as actors do, ticking pending latent action when the component ticks, instead of later on in the frame (default behavior in 4.16 and beyond) - Prior to 4.16, components behaved as if the value were 0, which meant their latent actions behaved differently to actors This CVar will be removed in a future version, defaulting to on #jira UE-43661 Change 3389276 on 2017/04/11 by Marc.Audy Spelling fix and NULL to nullptr Change 3389303 on 2017/04/11 by Mieszko.Zielinski Made sure AIController::Posses doesn't get called when compiling Pawn BP #UE4 #jira UE-43873 Change 3390215 on 2017/04/12 by mason.seay Removed some tests, will need further review Change 3390638 on 2017/04/12 by Mike.Beach Generalizing the omission of the CoerceProperty (in EmitTerm) - previously we were only omitting properties for our custom array lib. For wildcards, a coerce property should not be used as its type will not match. NOTE: There is a slight behavior change in UEdGraphSchema_K2::ConvertPropertyToPinType(), as it will return 'wildcard' for params marked as 'ArrayTypeDependentParams' (previously would have returned 'int'). #jira UE-42747 Change 3390774 on 2017/04/12 by Ben.Zeigler #jira UE-43911 Fix several issues with saving a runtime asset registry containing redirectors that caused crashes in cook on the fly. Don't resolve redirectors on incoming links because it will make a circular link, and fix an issue where chained redirectors would break the for loop iteration and return a bad dependency Fix it so the asset registry written out at the beginning of CookOnTheFly uses the registry generator, otherwise it will include all of the stripped editor only tags Change 3390778 on 2017/04/12 by Ben.Zeigler Fix UCookOnTheFlyServer::CollectFilesToCook to check for initial unsolicited packages up front. This is required in iterative mode because it may skip cooking all explicit packages and thus miss a new startup loaded package Change 3390782 on 2017/04/12 by Ben.Zeigler Change RunProjectCommand to not imply -nomcp, and allow reading -clientcmdline to override setting the map parameter to 127.0.0.1 by default Fix RunProjectCommand to remove ios-specific checks to not pass weird platform parameters, and instead never pass them Fix PS4Platform to pass along command line when calling build cook run, args needs to be the last parameter so explicitly set -target= Change 3390859 on 2017/04/12 by Mike.Beach T3D class fields now export with the class's fully qualified path name (to avoid abiguity). Since we can have multiple classes with the same name (Blueprints in different folders), we have to use the class's fully qualified object path. #jira UE-28048 Change 3390914 on 2017/04/12 by Lukasz.Furman fixed missing navlink component's transform in exported navigation data #jira UE-43688 Change 3391122 on 2017/04/12 by Ben.Zeigler Add new PreloadPrimaryAssets call to AssetManager that stream the desired assets without modifying the official load/unload state. This is useful if you want to preload things in case the might be used in the future, and it also supports recursion Fix crash calling GetAssetDataForPath with null path Change 3391494 on 2017/04/12 by Dan.Oconnor Fix bad references in deep object (widget) hierarchies #jira UE-43802 Change 3391529 on 2017/04/12 by Dan.Oconnor Fix log spam, accidently submitted #rnx Change 3391756 on 2017/04/12 by Dan.Oconnor LinkExternalDependencies needs to be performed before we RefreshVariables #jira UE-43843 Change 3392542 on 2017/04/13 by Marc.Audy Ensure that initialized actors get cleaned up when removed from world even if that world hasn't begun play. #jira UE-43879 Change 3392746 on 2017/04/13 by Marc.Audy (4.16) When duplicating a blueprint node, correctly make the new node a sibling of the duplicated node, not a child of it (unless duplicating the root component). Also resets scale of a duplicated root component to 1 to avoid a squaring of the scale for that component. #jira UE-40218 #jira UE-42086 Change 3393253 on 2017/04/13 by Dan.Oconnor Make sure calculated meta data is correctly set on functions generated by the compilation manager (SKEL_ class functions) #jira UE-43883 Change 3393509 on 2017/04/13 by Mike.Beach Removing hack'ish ResetLoaders() call that was causing undesired side-effects (resetting of a loaded package that other objects were relying on). This was originally intended to release file handles so separate editor processes could make updates and save the file (from CL 1712376). Using ResetLoaders() for this is bad though, as it has too many side effects. Instead we have to wait for GC to run. This also makes sure that GC should run as intended as the CookOnTheFly sever is idling. #jira UE-37284 Change 3394350 on 2017/04/14 by Michael.Noland Core: Making FDateTime and FTimespan actually reflected, so they get duplicated properly in CopyPropertiesForUnrelatedObjects, etc... #jira UE-39921 Change 3395985 on 2017/04/17 by Phillip.Kavan #jira UE-38280 - Fix invalid custom type selections on member fields in the User-Defined Structure Editor after a reload. Change summary: - Ensure that the 'SubCategoryObject' member in a UDS variable descriptor has been loaded when converting to an FEdGraphPinType. Change 3396152 on 2017/04/17 by Marc.Audy TickableGameObjects that have IsTickableInEditor false should not tick in the editor #jira UE-40421 Change 3396279 on 2017/04/17 by Phillip.Kavan #jira UE-43968 - Fix failed validation of bitmask enum types when serializing bitmask literal nodes. Change 3396299 on 2017/04/17 by Dan.Oconnor Fix resintancing issues exposed by running TM-Gameplay with -game. We cannot reinstance actors in levels on load because the scene is not created. #jira UE-43859 Change 3396712 on 2017/04/17 by Marc.Audy Call PostLoad on subobjects before copying for unrelated properties to avoid cases where an out of date object patched over in the linker has not been brought up to date #jira UE-38234 Change 3396718 on 2017/04/17 by Mike.Beach Adding a search bar to the components tree for Blueprints. #epicfriday #jira UE-17620 Change 3396999 on 2017/04/17 by Mike.Beach In generated code, call event '_Implementation' functions directly for interface functions being invoked on self (avoids a UHT runtime error). #jira UE-44018 Change 3397700 on 2017/04/18 by Marc.Audy UT struct BlueprintType fixups Change 3397701 on 2017/04/18 by Marc.Audy Odin struct BlueprintType fixups Change 3397703 on 2017/04/18 by Marc.Audy Ocean struct BlueprintType fixups Change 3397704 on 2017/04/18 by Marc.Audy WEX struct BlueprintType fixups Change 3397705 on 2017/04/18 by Marc.Audy Additional UT blueprint type struct fixups Change 3397706 on 2017/04/18 by Marc.Audy Fortnite struct BlueprintType fixups Change 3397708 on 2017/04/18 by Marc.Audy Fixup Engine BlueprintType markup of structs Change 3397709 on 2017/04/18 by Marc.Audy Sample Game struct BlueprintType fixups Change 3397711 on 2017/04/18 by Marc.Audy Mark AnimNodes as BlueprintType and BlueprintInternalUseOnly Change 3397712 on 2017/04/18 by Marc.Audy Paragon struct BlueprintType fixups Change 3397735 on 2017/04/18 by Marc.Audy Definition pieces of BlueprintInternalUseOnly to fix UHT errors with structs already marked to use it Change 3397912 on 2017/04/18 by Mike.Beach Fix for CIS warnings about shadowed variables (fallout from CL 3396718). Change 3398455 on 2017/04/18 by Marc.Audy Make less critical errors log an error rather than immediately throwing allowing multiple errors to be reported in the same compile Change 3398491 on 2017/04/18 by Marc.Audy BPRW/BPRO in a non-BlueprintType is now a UHT error Change 3398539 on 2017/04/18 by Marc.Audy Fixup live link struct markups Change 3399412 on 2017/04/19 by Marc.Audy Fix Match3 blueprint type struct markups Change 3399509 on 2017/04/19 by Phillip.Kavan #jira UE-38574 - Fix AnimBlueprint function graphs marked as 'const' to treat 'self' as read-only when compiling. Change summary: - Modified FKismetCompilerContext::ProcessOneFunctionGraph() to use the function graph schema rather than the compiler context schema for both the function context's schema as well as testing the function for 'const'-ness. For AnimBPs, the compiler context and the function graph context can differ, so we need to make sure we are using the right one when making queries for a specific function context during compilation. - Minor cleanup: changed the function context schema to be 'const' in order to be consistent with the function graph GetSchema() API's result. Added a few 'const' qualifiers where needed to match. - Added a new object version in order to avoid breaking compilation of existing AnimBP function graphs that may already be violating the 'const' rule (this is the same thing that was done when 'const' was first added to "normal" BP function graphs). Just as with normal function graphs in place before the addition, a warning will be generated for existing AnimBP function graphs if they violate 'const' correctness, and an error will be generated for all new ones. Change 3399749 on 2017/04/19 by Mike.Beach Hiding the Nativized Blueprints plugin from the in-editor browser (prevent users from disabling it). Change 3399774 on 2017/04/19 by Marc.Audy ConditionalPostLoad is already called on StaticMesh earlier in the function #rnx Change 3400313 on 2017/04/19 by Mike.Beach Mirroring CL 3398673 from 4.16 Now, with ICWYU, making sure that the coresponding header gets included first in nativized Blueprint files (else we get a UHT error). Had to fixup some ShooterGame specific files as a result (they had missing includes and forward declarations). #jira UE-44124 Change 3400328 on 2017/04/19 by Mike.Beach Missing file from mirrored change (CL 3400313 - mirroring CL 3398673 from 4.16) #jira UE-44124 Change 3400415 on 2017/04/19 by Chad.Garyet adding physx switch build to framework Change 3400514 on 2017/04/19 by Mike.Beach Back out changelist 3400313 / 3400328 (mirrored from CL 3398673 in 4.16), as it was producing "include PCH first" errors. Likely, CL 3398673 was a fix for a 4.16 specific change, altering the expected include order. We'll have to wait for this one to be integrated back. Change 3400552 on 2017/04/19 by Marc.Audy Undo the calling of post load prior to the CPFUO as dependent objects may not yet be loaded. Instead copy the need load flag to the new CDO subobject, similarly to how the top level CDO object copies its flags over. #jira UE-44150 Change 3400815 on 2017/04/19 by Marc.Audy Spelling fix (part of PR #3490) #rnx Change 3400918 on 2017/04/19 by Marc.Audy Partial pull of PR #3490: Improved remapping game controls support (Contributed by projectgheist) This portion brings in the exposure of the bindings to blueprint #jira UE-44122 Change 3401550 on 2017/04/20 by Marc.Audy fix kitedemo blueprint type markup #rnx Change 3401702 on 2017/04/20 by Mike.Beach Make it so plugins added to a project through the .uproject's 'AdditionalPluginDirectories' list get folded into the generated code project (for visual studio, etc.). Change 3401720 on 2017/04/20 by Mike.Beach Add white and black lists for target type (game, client, server, etc.) to plugin module descriptors. Change 3401725 on 2017/04/20 by Mike.Beach Whitelisting the nativized Blueprint plugin for only the targets it was built for (game, server, or client). Change 3401800 on 2017/04/20 by Ben.Zeigler Add Algo::BinarySearch, LowerBound, and UpperBound. These are setup to allow binary searching a presorted array, and allow for specifying projection and sort predicates. Convert some engine code to use it Add TSortedMap, which is a map data structure that has the same API as TMap, but is backed by a sorted array. It uses half the memory and performance is faster below n=10 Add FName::CompareIndexes so a SortedMap with FNames can be used without doing very slow string compares, and FNameSortIndexes predicate to sort by it Add code to Algo and Container tests. Split up container tests so the new ones aren't run in smoketest as they are a bit slow Add RemoveCurrent and SetToEnd to ArrayIterator Change 3401849 on 2017/04/20 by Marc.Audy Partial pull of PR #3490: Improved remapping game controls support (Contributed by projectgheist) This portion brings bug fixes and improvements to InputKeySelector UMG widgets. #jira UE-44122 Change 3402088 on 2017/04/20 by Marc.Audy Focus the search box when expanding the map value type #jira UE-44211 Change 3402251 on 2017/04/20 by Ben.Zeigler Fix issue where SortedMap needs to be resorted after serialization, because the sorting may have changed from when it was saved out Change 3402335 on 2017/04/20 by Ben.Zeigler Significant changes to FAssetData serialization and memory, cuts memory significantly but will break code that was using some of the internal API that was not properly hidden before Both Editor and Runtime cache now use the same FAssetRegistryVersion, which is now registered as a custom version Rename FAssetData and FAssetPackage operator<< to SerializeForCache to make it clear that it isn't safe to use for general serialization Remove GroupNames from FAssetData, it has not been useful since the UE4 package structure changed around 4.0 Rename generic-sounding but not actually generic SharedMapView class to AssetDataTagMapSharedView to indicate what it is actually used for Change TagsAndValues to use a new array-backed TSortedMap as the base structure instead of a hash map. Also, it only allocates the map on demand, which saves significant memory at runtime as many packages have no tags Add bFilterAssetDataWithNoTags to [AssetRegistry] ini section, if set it will only save cooked asset data if it has tags, off by default but saves significant memory if your whitelist is set up properly Fix issue where asset registry tags updated by loading assets during cook were not being reflected in the cooked registry Add AssetRegistry::GetAllocatedSize and add to MemReport output Change 3402457 on 2017/04/20 by Ben.Zeigler Enable asset registry iteration and stripping unused asset data in Fortnite. Registry iteration is already on in //Fortnite/Main, stripping is a new feature I want to test Change 3402498 on 2017/04/20 by Ben.Zeigler CIS fix. Why did this compile locally? Change 3402537 on 2017/04/20 by Ben.Zeigler Remove ensure for making AssetData for subobjects, the editor does this for thumbnail creation in some cases Change 3402600 on 2017/04/20 by Ben.Zeigler Add bShouldGuessTypeAndNameInEditor to manager settings, can be set false for games where type cannot be safely implied and content must be resaved Fix up some bool setting code inside asset manager, and fix const correctness and for iterator issues AssetManager can now discover any BlueprintCore type when bHasBlueprintClasses=true Add AssetManager.DumpAssetRegistryInfo to output detailed asset registry usage stats Add Primary Name to asset audit window by default Change 3403556 on 2017/04/21 by Marc.Audy Fix Orion input key selector override class #rnx Change 3404090 on 2017/04/21 by mason.seay Applying Forcefeedback to test map Change 3404093 on 2017/04/21 by mason.seay Changing text in level Change 3404139 on 2017/04/21 by mason.seay Added Force Feedback test and made some tweaks. Change 3404146 on 2017/04/21 by mason.seay Added source reference to Instanced Variable test Change 3404154 on 2017/04/21 by mason.seay More minor tweaks Change 3404155 on 2017/04/21 by Marc.Audy Remove auto #rnx Change 3404188 on 2017/04/21 by Marc.Audy Fixed crash changing variable type when any type other than map #jira UE-44249 #rnx Change 3404463 on 2017/04/21 by Ben.Zeigler Fix asset data code to not ensure when loading an object with invalid exports, and instead print warning with name of package that needs to be resaved Resave a map that had a redirector from a DIFFERENT package saved in it's exports. I do not understand how this happened, but it appears to be related to the lightmap BuiltData transition when old maps are opened Change 3404465 on 2017/04/21 by Ben.Zeigler Fix issue with trying to load editor-only asset classes in a cooked build Fix issues with renaming or changing template Ids of assets from the editor Always print the Duplicate Asset ID error, as if you have more than one the ensuremsg only goes off once Change 3404481 on 2017/04/21 by Dan.Oconnor Remove unneeded walk up hierarchy - prevent stale entries in action database if we compile a BP but don't compile its children Change 3404510 on 2017/04/21 by Phillip.Kavan #jira UE-35727 - Collapsed graphs containing a local variable node will no longer cause a compile error when the parent graph is renamed. Change 3404590 on 2017/04/21 by Michael.Noland Editor: Fixed incorrect filtering of abstract/deprecated UDeveloperSettings and UContentBrowserFrontEndFilterExtension classes caused by a typo (HasAnyCastFlags versus HasAnyClassFlags) Change 3404593 on 2017/04/21 by Marc.Audy Fixed another crash to do with input pin secondary combo box #jira UE-44269 #rnx Change 3404600 on 2017/04/21 by Michael.Noland Core: Allow UE_GC_TRACK_OBJ_AVAILABLE to be set externally #rnx Change 3404602 on 2017/04/21 by Michael.Noland Engine: Switched from an include to a forward declaration of SWidget in UDeveloperSettings to keep it slim #rnx Change 3404608 on 2017/04/21 by Michael.Noland Core: Marked TNumericLimits as constexpr so they can be used in static asserts Change 3404659 on 2017/04/21 by Michael.Noland Engine: Adding includes back to two UDeveloperSettings subclasses Change 3405289 on 2017/04/24 by Marc.Audy Remove auto #rnx Change 3405446 on 2017/04/24 by Marc.Audy Fix Win32 unsigned compile issue Change 3405512 on 2017/04/24 by Mike.Beach Piping through NativizationOptions to filename generation (so we're able to gen different files names per target: client vs. server). Change 3406080 on 2017/04/24 by Ben.Zeigler Deprecate UEngine::OnPostEngineInit and move to FCoreDelegates, clean up comments for the initialization delegates Call OnPostEngineInit from commandlet initialization as well as normal execution. I thought about making a wrapper function, but the commandlet calls EditorInit directly so it wouldn't work Bind delegate to refresh the AssetRegistry native class hierarchy after engine init so it picks up game/plugin classes. Undo ini change that was required to hack around this Change 3406381 on 2017/04/24 by Ben.Zeigler #jira UE-23768 Enable Run Physics With No Controller for montage test pawn. The montage pawn has no controller so wasn't correctly running physics when the root motion stopped. This flag needs to be set to allow it to correctly stop after the montage is over Change 3406438 on 2017/04/24 by Ben.Zeigler Fix deprecation warning Change 3406519 on 2017/04/24 by Phillip.Kavan #jira UE-43612 - Suppress array "Get" node fixup notifications on load when the BP Compilation Manager is enabled. Change summary: - Wrapped BPCM calls to FBlueprintEditorUtils::ReconstructAllNodes() and ReplaceDeprecatedNodes() duirng compile-on-load with bIsRegeneratingOnLoad = true. This matches the BP's state during compile-on-load when the BPCM is not enabled. Change 3406565 on 2017/04/24 by Dan.Oconnor Make sure all interface functions are added to skeleton #jira UE-44152 Change 3407489 on 2017/04/25 by Ben.Zeigler #jira UE-44317 Fix game-only TickableGameObjects to correctly tick in PIE Change 3407558 on 2017/04/25 by Ben.Zeigler Fix Fortnite cook warnings, issue had to do with the CDO being registered as a Primary Asset in conflict with the Class being registered Fix issue with renaming a BP primary asset not finding the old name Change 3407701 on 2017/04/25 by Dan.Oconnor Remove unneeded null check, static analysis doen't like the inconsistency Change 3407995 on 2017/04/25 by Marc.Audy Fixed maps and sets not working correctly with split pin. #jira UE-43857 Change 3408124 on 2017/04/25 by Ben.Zeigler #jira UE-39586 Change it so the blueprint String/Name/Object to Text node creates culture invariant text, and also have them show as an expanded node with a comment explaining this Fix Transform to actually return in the format specified in the comment, and fix comments on many text conversions Change 3408134 on 2017/04/25 by Marc.Audy Graph pin container type now represented by an enumeration (EPinContainerType) rather than 3 "independent" booleans. FEdGraphPinType constructor, UEdGraphNode::CreatePin, and FKismetCompilerContext::SpawnInternalVariable that took 3 booleans deprecated and replaced with a version that takes EPinContainerType. UEdGraphNode::CreatePin parameters reorganized so that PinName is before ContainerType and bIsReference, which default to None and false respectively Change 3408256 on 2017/04/25 by Michael.Noland Core: Changed UClass::ClassFlags to be of type EClassFlags for improved type safety Change 3408282 on 2017/04/25 by Marc.Audy (4.16) Fix incorrect positioning of instance components after duplication #jira UE-44314 Change 3408404 on 2017/04/25 by Mike.Beach Adding and removing the nativized plugin to/from the project when we alter the packaging nativization setting (so it gets picked up by project generation). Change 3408445 on 2017/04/25 by Marc.Audy Fix up missed deprecation cases #rnx Change 3409354 on 2017/04/26 by Marc.Audy Fix Linux CIS failure #rnx Change 3409487 on 2017/04/26 by Marc.Audy When dragging assets in to the SCS create them as siblings, not nested #jira UE-43041 Change 3409776 on 2017/04/26 by Ben.Zeigler #jira UE-44401 Fix issue with cooking a map containing a reparented component. In that case the child component may think it's not editor only, but it's archetype is editor only. This is not allowed in EDL, so now the child is marked as editor only as well Change 3410168 on 2017/04/26 by Dan.Oconnor Avoid calling virtual functions in the middle of compile #jira UE-44243 Change 3410252 on 2017/04/26 by Lukasz.Furman adjusted WITH_GAMEPLAY_DEBUGGER checks after IWYU changes #ue4 Change 3410385 on 2017/04/26 by Marc.Audy ChildActorComponent SetClass no longer fails when setting at runtime. #jira UE-43356 Change 3410466 on 2017/04/26 by Michael.Noland Core: Ensuring EClassFlags is 32 bit in a different way (underlying type of the enum is coming out signed even though all members are unsigned, long term fix is probably to move it to an enum class) #rnx Change 3410476 on 2017/04/26 by Michael.Noland Automation: Deleting some commented out methods #rnx Change 3411070 on 2017/04/27 by Marc.Audy Properly complete deprecation of old attachment API Change 3411338 on 2017/04/27 by mason.seay Map for Latent Action Tick Bug Change 3411637 on 2017/04/27 by Ben.Zeigler Back out CL #3381532 as it was causing crashes when adding new variables to blueprints, as the transaction array was being recursively modified while it was being added to Change 3412052 on 2017/04/27 by mason.seay Updated jump test map and pawn Change 3412231 on 2017/04/27 by Ben.Zeigler Fix issue where running SearchAllAssets multiple times after mounting new paths would throw away the asset registry cache, which slowed down incremental cooking substantially because the cooker mounts the autosave folder Duplicate of CL #3411860 Change 3412233 on 2017/04/27 by Ben.Zeigler Made FStreamableHandle::GetLoadedCount much faster by taking advantage of existing progress counter Duplicate of CL #3411778 Change 3412235 on 2017/04/27 by Ben.Zeigler Add code to FStringAssetReferenceThreadContext and FStringAssetReferenceSerializationScope which allows setting package name and collect options for string asset references serialized via something other than linker load Make RedirectCollector threadsafe to avoid issues with async loading asset references Fix it so ProcessStringAssetReferencePackageList will remove entries from the string asset array like resolve did, and rename function to indicate that Fix it so string asset references created by asset labels do not automatically get cooked, and significantly improve the speed of labels with lots of assets Add code to cooker and asset manager to explicitly mark non-cookable assets as NeverVook, this stops labels from ending up in the build if set that way Added option to not recurse package dependency changes more than one level when hashes change. This ended up not being significantly faster in a realistic case so left disabled Duplicate of CL #3412080 Change 3412352 on 2017/04/27 by Marc.Audy Refix lighting getting wrong position when getting component instance data Change 3412426 on 2017/04/27 by Marc.Audy Take first steps to making ComponentToWorld private and force use of accessor Make bWorldToComponentUpdated private Make ComponentToWorld and bWorldToComponentUpdated mutable Add a SetComponentToWorld function for the (likely ill-advised) places that were setting it directly. Change 3412468 on 2017/04/27 by Marc.Audy Remove last remnants of deprecated (4.11) custom location system Change 3413398 on 2017/04/28 by Marc.Audy Fix up missed deprecated attachment API uses Change 3413403 on 2017/04/28 by Marc.Audy Fix Orion compile error #rnx Change 3413448 on 2017/04/28 by Marc.Audy Fix up kite demo component to world privataization warnings #rnx Change 3413792 on 2017/04/28 by Ben.Zeigler Fix many bugs with blueprint pin default values, and add "Reset to Default Value" option to pin context menu Deprecate and rename SetPinDefaultValue because it actually sets the Autogenerated default. This was being called in bad places and destroying the stored autogenerated defaults #jira UE-40101 Fix expose on spawn pins to correctly update when the spawned object's defaults change #jira UE-21642 Fix struct pin default values to properly update when the struct is changed #jira UE-39418 Fix changed function/macro default values to properly update in already placed call nodes Change 3413839 on 2017/04/28 by samuel.proctor Added some Blueprint focused tests for TM-Gameplay Change 3414030 on 2017/04/28 by Ben.Zeigler Enable use of AssetPtr variables with Config, for native and blueprint This incorporates CL #3302487 but also enables for blueprint usage as that code is new to framework branch Change 3414229 on 2017/04/28 by Marc.Audy Fixup virtuals not calling their Super Remove some autos #rnx Change 3414451 on 2017/04/28 by Lukasz.Furman static analysis fix for gameplay debugger Change 3414482 on 2017/04/28 by Ben.Zeigler Fix crash found where changing pin type on ConvertAsset accessed an array while deleting it Change 3414609 on 2017/04/28 by Ben.Zeigler #jira UE-18146 Refresh graph when disconnecting a resolve asset id node Change 3415852 on 2017/05/01 by Marc.Audy Remove unused code #rnx Change 3415856 on 2017/05/01 by Marc.Audy auto removal #rnx Change 3415858 on 2017/05/01 by Marc.Audy Fix function taking an input as reference when unneeded and causing (still unclear why it suddenly started showing up) error in cooking #rnx Change 3415946 on 2017/05/01 by Marc.Audy Have K2Node_StructOperation skip the K2Node_Variable validation as it doesn't need a property (per CL# 1756451) #rnx Change 3415988 on 2017/05/01 by Lukasz.Furman renamed WorldContext param in AI related static blueprint functions to remove load/cook warnings #jira UE-44544 Change 3416030 on 2017/05/01 by Ben.Zeigler Fix issue with WorldContext pins being broken by my pin value refactor, partial paths like "WorldContext" need to be stored as strings and not as broken object references. Change 3416230 on 2017/05/01 by Marc.Audy Fix spelling error #rnx Change 3416419 on 2017/05/01 by Phillip.Kavan #jira UE-44213 - Nativizing a Blueprint class with a non-nativized Blueprint class subobject dependency will no longer lead to a crash at load time. Change summary: - Modified the FFakeImportTableHelper ctor to inject subobject CDOs into the 'SerializeBeforeCreateCDODependencies' array. This in turn ensures that EDL will serialize those subobject CDOs (if necessary) before we create the subobject's nativized owner's CDO at load time. - Modified FEmitDefaultValueHelper::GenerateCustomDynamicClassInitialization() to emit MiscConvertedSubobject instantiations AFTER we emit the FillUsedAssetsInDynamicClass() call. This is now consistent with the code emitted for other subobjects (all of which assumes that the UsedAssets array has been initialized). - Modified FFindAssetsToInclude::HandleObjectReference() to add UField owner CDOs in addition to the owner class to the asset dependency list. This ensures that owner CDOs will be emitted alongside the class to both the nativized asset dependency table as well as to the fake import table associated with the UDynamicClass linker for the nativized BP asset. Change 3416425 on 2017/05/01 by Phillip.Kavan #jira UE-44219 - Nativizing a Blueprint class with a nativized DOBP class dependency will no longer lead to a compile error at cook/nativization time. - Modified the FGatherConvertedClassDependencies ctor to properly handle DOBPs in exclusive mode that have been explicitly enabled for nativization. Previously, this code wasn't taking that possibility into account, and as a result could lead to a missing header file in a dependent nativized class body's include set. - Modified FGatherConvertedClassDependencies::GetFirstNativeOrConvertedClass() to remove the 'bExcludeBPDataOnly' parameter, as it was primarily just being used for a redundant exclusion check when called from the FGatherConvertedClassDependencies ctor. That call site has now been modified to start searching from the super class instead. Additionally, any DOBPs will already fail the preceding WillClassBeConverted() check if they have not been explicitly enabled for nativization in exclusive mode, and will always fail if nativizing in inclusive mode. The extra check was breaking the explicitly-enabled case, so it was removed to allow explicitly-enabled DOBPs to pass. Notes: - Allowing for explicitly-enabled DOBPs in exclusive mode may be removed in a future change, but since it is currently supported, the changes noted above will at least ensure that the generated code will compile properly for now. Change 3416570 on 2017/05/01 by mason.seay Added UMG test to map. Tweaked force feedback test Change 3416580 on 2017/05/01 by mason.seay Resubmitting sub levels Change 3416597 on 2017/05/01 by Dan.Oconnor Compilation manager iteration, adds machinery for individual blueprint compilation, adds comments, cleans up duplicated code Change 3416636 on 2017/05/01 by Phillip.Kavan #jira UE-44505 - Potential fix for a low-repro crash tied to the Blueprint graph context menu. Change summary: - Switched FBlueprintActionInfo::ActionOwner to be a weak object reference. Change 3416960 on 2017/05/01 by Dan.Oconnor Use compilation manager when clicking the compile button, PIE'ing, etc Change 3417207 on 2017/05/01 by Ben.Zeigler Fix issue with None strings causing default value parsing failures Add SetPinDefaultValueAtConstruction needed by some other changes Change 3417519 on 2017/05/01 by Ben.Zeigler Fix BP compile errors caused by local variables with invalid default values. There's no reason to set autogenerated here because the nodes are transient and invisible in the UI. There is still a problem here, local variables are not getting their default values validated when type is changed, so you end up with an integer that has the default value of a struct. Change 3418659 on 2017/05/02 by Ben.Zeigler #jira UE-44534 Fix it so animation node pins get properly created autogenerated default values that are based on the node struct defaults. This fixes issues when they are reset to other defaults #jira UE-44532 Fix it so connecting an animation asset pin on a node player resets the pin value to the autogenerated default instead of the cached asset. This was causing old unused assets to get unnecessarily cooked Fix it so any animation node with an exposed pin that is an object property will reset that object propery when the pin is exposed. This fixes UE-31015 in a generic way Change the OptionalPinManager to take a Defaults address as well as a current address, to allow setting autogenerated defaults properly Remove Import/ExportKismetDefaultValueToProperty as they were redundant with PropertyValueFromString and were using the wrong pin setting functions, replaced with PropertyValueFromString_Direct and calling the schema pin set functions I need to write some backward compatibility code to fix existing nodes, I'll do that in a later checkin Change 3418700 on 2017/05/02 by Ben.Zeigler Actually fix None object paths for real this time. I did not test sufficiently before Change 3418811 on 2017/05/02 by Ben.Zeigler Fix existing animation blueprint nodes with dead asset references duplicated by pins. This code can be applied independent of the other change to fix specific games Change 3419165 on 2017/05/02 by Dan.Oconnor Add misc. functionality from FKismetEditorUtilities::CompileBlueprint Change 3419202 on 2017/05/02 by Marc.Audy Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3417825 #rnx Change 3419236 on 2017/05/02 by mason.seay Removed OnPressed event from Widget BP Change 3419314 on 2017/05/02 by Marc.Audy Fix bad auto-resolve #rnx Change 3419524 on 2017/05/02 by Marc.Audy PR #3528: Improved Input BP library node display names (Contributed by projectgheist) #jira UE-44587 #rn Improved Input BP library node display names Change 3419570 on 2017/05/02 by Zak.Middleton #ue4 - Fix typo in TFunctionRef comment/example. Change 3419709 on 2017/05/02 by Dan.Oconnor Fix missing category metadata on SkeletonGeneratedClass when using compilation manager Change 3419756 on 2017/05/02 by Dan.Oconnor Remove unintentional verbosity increase Change 3420875 on 2017/05/03 by Marc.Audy Make IsExecPin static Minor optimization to IsMetaPin #rnx Change 3420981 on 2017/05/03 by Marc.Audy Change tagging temporarily until other changes are done so that we don't have warnings in the meantime #rnx Change 3421367 on 2017/05/03 by Marc.Audy Manually introduce changes from CL# 3398673 in 4.16 that failed to make it to Dev-Framework as a result of the integration submitted as CL# 3401725. #rnx Change 3421685 on 2017/05/03 by Ben.Zeigler #jira UE-23001 Convert literal Asset ID/Class ID pins to store path as string instead of as hard object reference. Old pins are fixed on load, after resaving the hard references will go away Refactor the way that FStringAssetReference and FAssetPtr are serialized, it now does the various fixups in FStringAssetReference::SerializePath, which is called from archivers Change it so the asset registry reads in a list of all scanned redirectors and adds them to GRedirectCollector, this means that saving a string asset reference will automatically fix it up to point to the redirector destination Change the default behavior of FAssetPtr serialize on ArchiveUObject to match what most of it's children want, and remove several special case hacks. It now serializes as asset reference when saving/loading, and as object for other cases Deprecate StringAssetReferenceLoaded/StringAssetReferenceSaving delegates, replace with PreSavePath and PostLoadPath on FStringAssetReference Make AssetLongPathname private on FStringAssetReference, it was deprecated in 4.9 Change 3421728 on 2017/05/03 by Phillip.Kavan Mirror CL 3408285 from //UE4/Release-4.16. #jira UE-44124 #rnx Change 3422370 on 2017/05/03 by Dan.Oconnor Mirror 3422359 Implement UBlueprintGeneratedClass::NeedsLoadForEditorGame to match UBlueprint, also tag a class's CDO as NeedsLoadForEditorGame. This prevents us from failing to load a UBlueprint's GeneratedClass when running the editor with -server. #jira UE-44659 Change 3423192 on 2017/05/04 by Ben.Zeigler CIS Fix Change 3423305 on 2017/05/04 by Ben.Zeigler Fix "Missing opening parenthesis" warnings for Vector and Rotator the same way they were fixed for Transform Change 3423358 on 2017/05/04 by Marc.Audy Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3422809 #rnx Change 3423766 on 2017/05/04 by Ben.Zeigler #jira UE-44680 Delete some corrupted redirectors that are no longer in use Change 3423804 on 2017/05/04 by Dan.Oconnor Honor SaveIntermediateCompilerResults when using compilation manager Change 3424010 on 2017/05/04 by Marc.Audy Validate that switch string cases are unique Change 3424011 on 2017/05/04 by Marc.Audy Re-fix switch node default pin not appearing as an exec output Remove unused boolean Change 3424071 on 2017/05/04 by Ben.Zeigler Delete FixupRedirects commandlet, replace with -FixupRedirects/FixupRedirectors option on ResavePackages. This new method is much faster than the old commandlet as it uses the asset registry vs loading all packages, fixing up all redirectors in Fortnite only took about an hour vs 12+ hours the old way Removed some hacky bits in Core that only existed to support FixupRedirects Change it so the AssetRegistry listens to DirectoryWatcher callbacks in commandlets now that commandlets use the asset registry properly. This won't do anything unless you tick directory watcher the way that ResavePackages does Change 3424313 on 2017/05/04 by Dan.Oconnor Address missing property flags on SkeletonGeneratedClass when using compilation manager #jira UE-44705 Change 3424325 on 2017/05/04 by Phillip.Kavan #jira UE-44222 - Move nativized UDS implementation details into its own .cpp file in order to avoid circular dependencies. Change summary: - Modified IKismetCompilerInterface::GenerateCppCodeForStruct() to include an output parameter for CPP source and modified FKismet2CompilerModule to match the updated API. - Modified IBlueprintCompilerCppBackend::GenerateCodeFromStruct() to include an output parameter for CPP source and modified FBlueprintCompilerCppBackendBase to match the updated API. - Modified FBlueprintNativeCodeGenUtils::GenerateCppCode() to adjust the call to GenerateCppCodeForStruct() to include CPP source output. - Modified FGatherConvertedClassDependencies::DependenciesForHeader() to switch UDS property dependencies to be forward declarations rather than includes (for default value init code). - Modified FEmitDefaultValueHelper::GenerateGetDefaultValue() to emit implementation details to the 'Body' container, and adjust the header content to be a declaration only. - Modified FIncludeHeaderHelper::EmitInner() to exclude a potentially-redundant line for the module's .h file, for the case when the caller has included the base filename in the 'AlreadyIncluded' set. - Modified FEmitterLocalContext::FindGloballyMappedObject() to limit the 'TryUsedAssetsList' path to UClass conversions only (since that requires a UDynamicClass target to work). - Modified FGatherConvertedClassDependencies::DependenciesForHeader() to only include BPGC fields if they are also being converted. Eliminates an issue with missing header files in generated code. Change 3424359 on 2017/05/04 by Ben.Zeigler Fix issue where StreamableManager would break when requesting an async load that failed the first time. Because our game supports downloading assets during gameplay it's not safe to assume it will never load again. Port of CL #3424159 Change 3424367 on 2017/05/04 by Ben.Zeigler Fix some asset manager warnings to not go off in invalid cases Change 3425270 on 2017/05/05 by Marc.Audy Pack booleans/enums in UEdGraphNode and FOptionalPinFromProperty #rnx Change 3425696 on 2017/05/05 by Ben.Zeigler #jira UE-44672 Fix it so select node option pins get populated with default values properly #jira UE-43927 Fix it so select node opion pin type is correctly maintained accross node recreation, as opposed to deriving from the attached pins #jira UE-44675 Fix it to correctly refresh select node when switching from bool to integer index Change 3425833 on 2017/05/05 by Ben.Zeigler #jira UE-31749 Fix it so Undo works properly when modifying a local variable #jira UE-44736 Fix it so changing the type of a local variable correctly resets the default value Change 3425890 on 2017/05/05 by Marc.Audy Fix Copy/Paste of child actor components losing the template #jira UE-44566 Change 3425947 on 2017/05/05 by Ben.Zeigler This was meant to be part of last checkin Change 3425959 on 2017/05/05 by Ben.Zeigler #jira UE-44692 Fix it so only the sequentially last node can be removed from a Switch On Int, and for Switch On Name stop it from removing an exec pin if it's the only non-default one Change 3425979 on 2017/05/05 by Dan.Oconnor PVS fix Change 3425985 on 2017/05/05 by Phillip.Kavan Fix an uninitialized variable. #rnx Change 3426043 on 2017/05/05 by Ben.Zeigler #jira UE-35583 Correctly refresh array node UI when connecting pins that change it away from wildcard Change 3426174 on 2017/05/05 by Zak.Middleton #ue4 - Avoid call to virtual getSimulationFilterData() to only use it when needed in PreFilter if we actually have items in the IgnoreComponents list (which is rare). The sim filter data 'word2' stores the component ID. Change 3426621 on 2017/05/05 by Phillip.Kavan #jira UE-44708 - Fix an issue that re-introduced component data loss in a non-nativized child Blueprint class with a nativized parent Blueprint class. Change summary: - Removed an unnecessary additional check I had for the presence of "-NativizeAssets" switch on the command line in UBlueprint::BeginCacheForCookedPlatformData(). This check was failing because the usage was recently changed to include an optional value. It was not needed anyway so I just removed it. #rnx Change 3426906 on 2017/05/05 by Ben.Zeigler #jira UE-11189 Fix function/macro input default values to show as a pin customization instead of as a broken text box that doesn't work correctly for most types. This fixes enums and provide validation for other types Types that don't have a customization (most structs) will now show any more, they did not work before either #jira UE-21754 Hide function default values if pass by reference is set Fix it so changing input parameter will also reset default value, to avoid having the wrong type value set and to work the same as local variables Change 3426941 on 2017/05/05 by Dan.Oconnor Fix determinstic cooking of LoadAssetClass nodes in macros Change 3427021 on 2017/05/05 by Dan.Oconnor Build fix, make initialization order in source match artifact #rnx Change 3427135 on 2017/05/05 by Phillip.Kavan #jira UE-44702 - Restore code-based interface classes to Blueprint editor UI. Change summary: - Partially backed out CL# 3348513 to return to previous behavior for 4.16. The UI is no longer filtering on the __is_abstract() type trait for interface classes. - Modified FNativeClassHeaderGenerator::ExportClassFromSourceFileInner() to emit the _getUObject() declaration for native interface types as a default implementation that returns NULL rather than as a pure virtual declaration. #rnx Change 3427144 on 2017/05/06 by Marc.Audy Fix init order #rnx Change 3427146 on 2017/05/06 by Marc.Audy remove stray semicolon #rnx Change 3427242 on 2017/05/06 by Phillip.Kavan #jira UE-44744 - Fix a regression in which a UMG Widget Blueprint property not explicitly marked as a variable would cause Blueprint nativization to fail at package time. Change summary: - Modified FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() to only add 'Category' metadata when we set the 'CPF_BlueprintVisible' flag on the UProperty, which in is now tied to whether or not the property has been explcitly marked as a variable. This avoids a UHT warning when compiling the nativized codegen that would cause packaging to fail. #rnx Change 3427720 on 2017/05/08 by Dan.Oconnor Backing out 3419202 #rnx Change 3427725 on 2017/05/08 by Dan.Oconnor SA fix #rnx Change 3427734 on 2017/05/08 by Dan.Oconnor More exhaustive GEditor null checks, to appease SA #rnx Change 3427882 on 2017/05/08 by Marc.Audy Properly order all booleans in intialization #rnx Change 3428049 on 2017/05/08 by Marc.Audy Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3427804 #rnx Change 3428523 on 2017/05/08 by Ben.Zeigler #jira UE-44781 Refresh function input UI when blueprint graph refreshes, needed as pins may have gone away Change 3428563 on 2017/05/08 by Ben.Zeigler #jira UE-44783 If setting a hard reference pin type from a string, load the referenced object. Change 3428595 on 2017/05/08 by Dan.Oconnor Avoid node reconstruction when we're compiling a blueprint with no linker (e.g., a duplicated blueprint) #jira UE-44777 Change 3428599 on 2017/05/08 by Ben.Zeigler #jira UE-44789 Fix string asset renamer to not mark IsPersistent becuase that crashes in lightmap code, change it so the path fixup doesn't require the persistent flag Change 3428609 on 2017/05/08 by Dan.Oconnor Improved fix for UE-44777 #jira UE-44777 #rnx Change 3429176 on 2017/05/08 by Phillip.Kavan #jira UE-44755 - Fix nativization build errors when packaging a game project that is not IWYU-compliant for a build target that disables PCH files. - Mirrored from //UE4/Release-4.16 (CL# 3429030). #rnx Change 3429198 on 2017/05/08 by Phillip.Kavan CIS fix. #rnx Change 3429583 on 2017/05/08 by Ben.Zeigler Fix SGraphPinClass to work properly after my changes to allow unloaded assets. For Class pins we need to store separate Runtime and Editor asset data objects, as one has _C and refers to the class, and the other doesn't and refers to the blueprint. The content browser wants the editor path, the pin defaults want the runtime path. Change default value widgets to look more like properties widgets by forcing them to act as highlighted and disabling black background Change 3429640 on 2017/05/08 by Marc.Audy Fix issues with select nodes in macros connected to wildcard pins. #jira UE-44799 #rnx Change 3429890 on 2017/05/08 by Ben.Zeigler Fix function/macro defaults to properly propagate when changed using the new edit UI Refactor some code out of the details customization into the k2 schema Disable defaults UI for object/class/interface hard references as it is disabled in KismetCompiler Change 3429947 on 2017/05/08 by Michael.Noland Core: Backing out CL# 3394352 (marking FDateTime and FTimespan nonexport member Tick with UPROPERTY()), which will re-break UE-39921 but fix UE-44418 There appears to be a more serious underlying issue with how the CDO is instanced which needs to be addressed #jira UE-44418 #reimplementing 3411681 from Release 4.16 Change 3429987 on 2017/05/08 by Ben.Zeigler #jira UE-44798 Do a better job of validating object paths saved as default values, due to an old bug with local variables some object paths are saved as struct exportext At load time clear invalid default value for local variables Add IsValidObjectPath to FPackageName that validates the passed in path would be valid to load with LoadObject Change 3430392 on 2017/05/09 by Marc.Audy Fix SA CIS error #rnx Change 3430747 on 2017/05/09 by Ben.Zeigler #jira UE-44836 Don't reconstruct node during callback for param value changing, this can happen during a reconstruction and recursive reconstruction is unsafe Don't call ModifyUserDefinedPinDefaultValue unless the default value has actually changed Change 3431027 on 2017/05/09 by Marc.Audy Fix BPRW mark up causing Ocean warnings #rnx Change 3431353 on 2017/05/09 by Marc.Audy Fix UHT error due to exposing FJsonObjectWrapper to blueprints #rnx [CL 3431398 by Marc Audy in Main branch]
2017-05-09 17:15:32 -04:00
UFUNCTION(BlueprintCallable, Category = "AI|Perception", meta = (WorldContext="WorldContextObject"))
static void ReportPerceptionEvent(UObject* WorldContextObject, UAISenseEvent* PerceptionEvent);
/** Registers a source of given sense's stimuli */
template<typename FSenseClass>
void RegisterSource(AActor& SourceActor);
/** Registers given actor as a source for all registered senses */
void RegisterSource(AActor& SourceActor);
void RegisterSourceForSenseClass(TSubclassOf<UAISense> Sense, AActor& Target);
/**
* unregisters given actor from the list of active stimuli sources
* @param Sense if null will result in removing SourceActor from all the senses
*/
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 2994668) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2967465 on 2016/05/05 by Marc.Audy Fix VS2015 shadow variables fixes Change 2970637 on 2016/05/09 by Martin.Wilson Fix incorrect conflict resolve in merge from main Change 2976393 on 2016/05/12 by Zak.Middleton #ue4 - Set AudioComponent bUseAttachParentBounds=true to reduce cost of transform updates (avoids virtual CalcBounds() when transform changes). #tests PIE w/ audio Change 2976770 on 2016/05/13 by Lina.Halper Improvement on mirroring fix branch #code review: Zak.Middleton Change 2976774 on 2016/05/13 by Lukasz.Furman fixed missing memory callbacks for instanced behavior tree nodes #jira UE-30305 Change 2976775 on 2016/05/13 by Lukasz.Furman fixed multiple calls to behavior tree's instance cleanup #jira UE-30593 Change 2976801 on 2016/05/13 by Jon.Nabozny Add an optional argument FSkeletalMeshMerge. When set to EMeshBufferAccess::ForceCPUAndGPU, keeps a reference to the vertex buffer on CPU (e.g. for spawning particle effects). #JIRA UE-30405 Change 2976985 on 2016/05/13 by Jon.Nabozny Fix initializer list ordering for FSkeletalMeshMerge. Change 2977532 on 2016/05/13 by Marc.Audy PR #2348: [Local Multiplayer] Gamepad player assignment improvements (Contributed by kukiric) #jira UE-30162 Change 2977637 on 2016/05/13 by Marc.Audy Add Get/Set controller ID for a player in gameplay statics #jira UE-28718 Change 2979387 on 2016/05/16 by Jon.Nabozny Initialize FBox used to store results for CalculateQuatACF96Bounds. #JIRA UE-30846 Change 2979968 on 2016/05/17 by bruce.nesbit Added comment in FCanvasLineItem to warn only SE_BLEND_Opaque will be used when rendering. Change 2979969 on 2016/05/17 by bruce.nesbit Added comment in AddLine/AddPoint to warn only SE_BLEND_Opaque will be used when rendering. Change 2980271 on 2016/05/17 by Lina.Halper Improved comment #code review: Benn.Gallagher Change 2980317 on 2016/05/17 by Lukasz.Furman removing NavCollision from static mesh on property change and PostLoad if static mesh is not supposed to have one #ue4 Change 2980717 on 2016/05/17 by Zak.Middleton #ue4 - Optimize UCapsuleComponent::CalcBounds() to remove sqrt and use tighter bounding sphere radius. Change 2981193 on 2016/05/17 by Lukasz.Furman fixed missing observers in behavior tree when dynamic subtree is changed while waiting for full restart (out of nodes) #ue4 Change 2981927 on 2016/05/18 by Lina.Halper - Remove vertex animation code - Removing UVertexAnimation - Fixed reinitialization issue that was triggered by SetVertexAnimation - todo: consolidate UMorphtarget and UVertexAnimBase #code review: James.Golding, Martin.Wilson Change 2981957 on 2016/05/18 by Lina.Halper Add recursive stack check on update animation #code review: Martin.Wilson Change 2982116 on 2016/05/18 by Benn.Gallagher Removed optimize macros accidentally left after bounds extension feature for skel meshes Change 2982255 on 2016/05/18 by Jon.Nabozny FSkeletalMeshMerge constructor "MeshBufferAccess" default should be EMeshBufferAccess:Default instead of EMeshBufferAccess::ForceCPUAndGPU. Change 2982607 on 2016/05/18 by Marc.Audy Cleanup places calling GetWorld() multiple times Change 2982621 on 2016/05/18 by Marc.Audy Make UActorComponent::GetWorld final and inlined to avoid unnecessary function calls Put uncached logic in to a separate function Change 2983424 on 2016/05/19 by Marc.Audy Minor tweaks to reduce GetWorld calls Change 2983465 on 2016/05/19 by Lina.Halper Combine VertexAnimBase and MorphTarget to just MorphTarget - VertexAnimBase is gone - Modified most of VertexAnim to MorphTarget - Removed state, time related data #code review: James.Golding, Rolando.Caloca Change 2983609 on 2016/05/19 by Marc.Audy Inline AActor::GetLevel Half GetWorld() calls from AActor::GetNetMode() Change 2983772 on 2016/05/19 by Marc.Audy Fix Mac compile Change 2983931 on 2016/05/19 by Marc.Audy Remove pointless AccelMouse function Change 2984061 on 2016/05/19 by Marc.Audy Reorg some headers to fix compilation issues Change 2984409 on 2016/05/19 by Aaron.McLeran #jira UE-31049 Updating the Oculus Audio SDK to vs 1.02 Implementing 2984316 from Releases/4.12 to Dev-Framework Change 2984574 on 2016/05/19 by Aaron.McLeran Fix for platform headroom scalar. Using correct dB to linear formula (not one for power) dB = 20 * log(Linear), not dB = 10 * log(Linear) Change 2985041 on 2016/05/20 by Jon.Nabozny ConvertQueryOverlap only returns the base actor if multiple actors have bSimulatePhysics enabled and are welded together. #JIRA UE-30484 Change 2985118 on 2016/05/20 by Marc.Audy Another attempt to convince Mac to build Change 2985192 on 2016/05/20 by Marc.Audy Properly forward declare ABrush Change 2985724 on 2016/05/20 by Zak.Middleton #ue4 - Optimize NaN and Infinite checks for FVector, FQuat, FRotator, FMatrix, FTransform. SIMD version VectorContainsNaNOrInfinite() also optimized on relevant platforms. Added startup tests for VectorContainsNaNOrInfinite(). - All our "ContainsNaN()" tests are in fact "IsNaN() || IsInfinite()", which is the same as "!IsFinite()", so exploited this to simplify the tests. Both NaN and +/-Inf are not finite (http://en.cppreference.com/w/cpp/numeric/math/isfinite). In the future we should rename ContainsNaN(). - Still need to audit some uses in shipping configs. #jira UE-30999 Change 2986016 on 2016/05/20 by Zak.Middleton #ue4 - Fix uint32 used for int32 values. Behavior was unaffected. Change 2986017 on 2016/05/20 by Zak.Middleton #ue4 - Fix overlaps being dropped from within a FScopedMoveUpdate when rotation occurs. Remove invalid assert. Change 2986833 on 2016/05/23 by Zak.Middleton #ue4 - Move ETeleportType from ActorComponent.h to EngineTypes.h. Add comment to FHitResult for ImpactPoint when it's penetrating. Change 2986916 on 2016/05/23 by Rolando.Caloca DF - GPU morph targets proof of concept - Disabled by default - Not compatible with gpu skin cache - No extra memory required yet until it's used; creates buffers per frame (very slow!) Change 2987539 on 2016/05/23 by Rolando.Caloca DF - Remove unused member and downgrade FActiveMorphTarget to not be a USTRUCT Change 2987981 on 2016/05/24 by James.Golding PR #2162 : Exported AAudioVolume so that projects can derive custom classes. https://github.com/EpicGames/UnrealEngine/pull/2162 #github 2162 #jira UE-28533 Change 2987982 on 2016/05/24 by James.Golding PR #2318 : Fix memory allocation in CustomMeshComponent.cpp https://github.com/EpicGames/UnrealEngine/pull/2318 #github 2318 #jira UE-29864 Change 2987983 on 2016/05/24 by James.Golding Merging engine changes back from GDC demo: - Export FFIRFilterTimeBased from Engine module - Add FFIRFilterTimeBased::SetWindowDuration - Add FBaseCompactPose::CopyBonesTo Change 2987984 on 2016/05/24 by James.Golding UE-30137 No longer include collision in StatiMeshComponent bounds (bounds no longer user for any collision calculation) Change 2987985 on 2016/05/24 by James.Golding UE-27801 Export ConvertToCollisionChannel, ConvertToObjectType, and ConvertToTraceType members of UCollisionProfile Change 2987987 on 2016/05/24 by James.Golding OR-17910 : Support 'show collision' in Test configuration Change 2988123 on 2016/05/24 by Jon.Nabozny Prevent FBodyInstance::Weld causing duplicate PhsyXShapes to be created / added to ShapeToBodiesMap when toggling SimulatePhysics on PrimitiveComponent. #JIRA UE-31189 Change 2988449 on 2016/05/24 by Rolando.Caloca DF - Split FActiveMorphTarget's weight into its own array in prep for GPU friendly data Change 2988485 on 2016/05/24 by Jon.Nabozny Swap order of setRigidBodyFlag and setRigidDynamicFlag inside UpdateInstanceSimulatePhysics to prevent PhysX error about Kinematic bodies not using CCD. #JIRA UE-30993 Change 2988969 on 2016/05/24 by Rolando.Caloca DF - GPU morph targets - Enable using r.MorphTarget.Mode 1 Change 2989645 on 2016/05/25 by Marc.Audy Apply CL# 2989481 to Dev-Framework #jira UE-31055 Change 2989987 on 2016/05/25 by Wes.Hunt Redo of CL#2982707 2982716 2982723 2983780 2983864 from //Orion/Dev-General in preparation for continuing Analytics refactor in a Dev branch. AnalyticsET support for arbitrary Json events. * AnalyticsET supports a new API, RecordEventJson. * API supports rvalue refs to avoid unnecessary copies of the attribute array. #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2982707 by Wes.Hunt on 2016/05/18 17:22:20. Remove Analytics code to divert legacy code to source data collector. #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2982716 by Wes.Hunt on 2016/05/18 17:27:25. Analytics no longer adds IsEditor attribute to all events. Wasn't actually used by anyone anymore. #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2982723 by Wes.Hunt on 2016/05/18 17:29:40. Modernize FAnalyticsEventAttribute usage. Replaced FAnalyticsEventAttribute various ctors with a perfect forwarding one that can convert them to strings. * The Name must be convertible to a string * The value must be convertible to a string via an AnalyticsConversion::ToString() overload. * Added/expanded the supported conversions to strings to analytics attribute values. See AnalyticsConversion.h which contains all the previously supported conversions and more. Added MakeAnalyticsEventAttributeArray(), which uses variadic templates to create an array of event attributes inline, which can be passed to RecordEvent[Json] and efficiently taken ownership of: RecordEvent("EventName", MakeAnalyticsEventAttributeArray( "Attr1", false, "Attr2", 42.0, "Attr3", SomeMap, "Attr4", SomeArray); #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2983780 by Wes.Hunt on 2016/05/19 13:51:48. Added missing assignment copy/move ops to FAnalyticsEventAttribute. Doh, should have looked at more usages of PLATFORM_COMPILER_HAS_DEFAULTED_FUNCTIONS... #AUTOMERGE using branch Orion-Dev-General-To-UE4-Dev-Framework of change#2983864 by Wes.Hunt on 2016/05/19 14:17:05. Change 2989988 on 2016/05/25 by Wes.Hunt Fix usage of FAnalyticsEventAttribute constructor using a bitfield that was invalidated by the change to make FAnalyticsEventAttribute use a perfect forwarding constructor. bitfields cannot be perfect-forwarded... :( Change 2990493 on 2016/05/25 by Joe.Graf Added tooltips to the collision analyzer's buttons #CodeReview: james.golding Change 2991064 on 2016/05/26 by James.Golding - Remove many Animation headers from Engine.h - Remove AnimationAsset.h from SkeletalMeshComponent.h, Character.h, CharacterMovementComponent.h Change 2991113 on 2016/05/26 by Benn.Gallagher Fixed edge case in random sequence player where we might trigger an extra loop when waiting on a blend to finish. And made it impossible for a shuffle list to start with the animation that is currently playing (seemingly duplicating the anim). Change 2991163 on 2016/05/26 by Rolando.Caloca DF - Rename and refactor some morph target compute shader in prep for interop with skin cache Change 2991167 on 2016/05/26 by Jon.Nabozny Add `#include "DataTable.h"` to GameplayTagsManager.h. FGameplayTagTableRow is derived from FTableRowBase which isn't necessarily included. This issue is hidden in most cases as "Engine.h" includes "DataTable.h". Change 2991183 on 2016/05/26 by Wes.Hunt Disable general forwarding constructor for AnalyticsEventAttribute for non arithmetic types, so they are free to choose other overloads more appropriately. Change 2991199 on 2016/05/26 by Wes.Hunt Drastically reducing the headers dependencies on analytics headers. Analytics headers no longer appear in PCH files, and rarely if ever appear in a header file. IAnalyticsProviderModule.h only touches 8 source files. Analytics.h only touches 8 source files. IAnalyticsProvider.h only touches 5 headers and 97 source files. AnalyticsET.h only touches 12 source files. Change 2991301 on 2016/05/26 by James.Golding Fix CIS for Fortnite Change 2991319 on 2016/05/26 by James.Golding Fix CIS for Orion Change 2991373 on 2016/05/26 by Joe.Graf Tweaked the tooltip text for the collision analyzer record button to be correct for both states Added a common button style so that the buttons have a consistent look #CodeReview: james.golding Change 2991401 on 2016/05/26 by James.Golding Fix UT CIS Change 2991406 on 2016/05/26 by James.Golding Fix Ocean CIS Change 2991491 on 2016/05/26 by Lina.Halper Moved MorphTarget.h - Checked in modified functions fo AnimationRuntime for other features coming up - Should not change any behavior of existing content #code review: James.Golding, Rolando.Caloca Change 2991494 on 2016/05/26 by Wes.Hunt Fix for Unity error in AnalyticsET module after hedaer dependency reduction Change 2991503 on 2016/05/26 by Jon.Nabozny Fix issue where FConstraintInstance (inside UPhysicsConstraintComponent) is not editable in InstanceEditor but is editable in BlueprintEditor. #JIRA UE-31267 Change 2991562 on 2016/05/26 by Zak.Middleton #ue4 - Reduce allocations during movement and overlap queries and when grabbing shapes from physx actors. Change 2991586 on 2016/05/26 by James.Golding More CIS fixes for Orion and Fortnite Change 2991673 on 2016/05/26 by Wes.Hunt Another non-unity fix for Analytics include dependency reduction. Change 2991733 on 2016/05/26 by Zak.Middleton #dev - Test map, 50 walking dudes. Change 2991781 on 2016/05/26 by Lina.Halper Back out revision 15 from //UE4/Dev-Framework/Engine/Source/Runtime/Engine/Private/Animation/AnimationRuntime.cpp - Back out a part of changes that I didn't mean to check in. Change 2991922 on 2016/05/26 by Zak.Middleton #ue4 - Maybe fix Mac build. Change 2991957 on 2016/05/26 by Joe.Graf Fixed the collision analyzer file open text (said project instead of collision) Change 2991991 on 2016/05/26 by Lina.Halper Fix compile error Change 2992089 on 2016/05/26 by Zak.Middleton #ue4 - Fix Mac/PS4 build. Change 2992108 on 2016/05/26 by Wes.Hunt Yet another non-unity fix for Analytics header inclusion reduction. Change 2992190 on 2016/05/26 by Zak.Middleton #ue4 - Mark FHitResult, FOverlapResult, FOverlapInfo as POD types. Avoids destructors etc when in TArrays. Change 2992593 on 2016/05/27 by Martin.Wilson Build fixes for non editor platforms Change 2992885 on 2016/05/27 by Rolando.Caloca DF - Fix crash on thumbnails #jira UE-31398 Change 2993058 on 2016/05/27 by Lukasz.Furman fixed behavior tree getting stuck on ResumeLogic call #jira OR-22498 Change 2993064 on 2016/05/27 by Zak.Middleton #ue4 - Fix root motion network corrections not clearing root motion data. udn: https://udn.unrealengine.com/questions/294985/jittering-in-character-movement-during-networked-m.html #jira UE-31316 Change 2993215 on 2016/05/27 by Lukasz.Furman gameplay debugger fixes: navmesh rendering is not hidden after disabling tool, player stuck in spectator mode after disabling tool, confusing version description for categories without data packs added replicated input bindings for debugger's categories #ue4 Change 2993521 on 2016/05/27 by Zak.Middleton #ue4 - Reduce allocations in UI Canvas items. Change 2993995 on 2016/05/30 by Mieszko.Zielinski Temporary fix for BBKeySelector not handling properly multiple UObject subtypes #UE4 #jira UE-31435 Change 2993998 on 2016/05/30 by Mieszko.Zielinski Improves handling of a special case in EQS score normalization, where all items have the same score #UE4 We used to set the normalized score of 1 for all items, which was counter intuitive if all items have scored 0 in an unnormalized test. The improve handling detects that and assigns score of 0 in that case. Change 2993999 on 2016/05/30 by Mieszko.Zielinski Fixed FEQSParametrizedQueryExecutionRequest converting non-BB values into EQS params wrong #UE4 Change 2994000 on 2016/05/30 by Mieszko.Zielinski Exposed UNavigationInvokerComponent as part of ENGINE_API so that it can be spawned procedurally in C++ in game specific code #UE4 Change 2994003 on 2016/05/30 by Mieszko.Zielinski Fixed naming of console variable controllin v-logging of FGameplayAttribute #UE4 The old name was copy-pasted from somewhere. Change 2994007 on 2016/05/30 by Mieszko.Zielinski Fixed unregistering listeners from perception system not clearing up all data #UE4 Also, introduced two precisely named functions, GetCurrentlyPerceivedActors and GetKnownPerceivedActors to replace ambiguous GetPerceivedActors Also, renamed UAIPerceptionComponent::TActorPerceptionContainer to UAIPerceptionComponent::FActorPerceptionContainer Change 2994475 on 2016/05/31 by Wes.Hunt Fix Unity build failure for analytics inclusion reduction for IOSFlurry. [CL 2994701 by Marc Audy in Main branch]
2016-05-31 13:51:34 -04:00
void UnregisterSource(AActor& SourceActor, const TSubclassOf<UAISense> Sense = nullptr);
Copying //UE4/Dev-Framework to Dev-Main (//UE4/Dev-Main) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2720406 on 2015/10/07 by Aaron.McLeran Audio optimization Don't search for nearest listener if there's only 1 listener. Change 2720411 on 2015/10/07 by Aaron.McLeran Fixing HRTF spatialization code with recent changes to stereo spatialization. HRTF emitter posiition doesn't need to be converted to XAudio2 coordinates. Change 2723829 on 2015/10/09 by Mieszko.Zielinski Fixed NavigationSystem trying to set label of newly spawned navigation data #UE4 UE-21880 Change 2723873 on 2015/10/09 by Mieszko.Zielinski Fixed a bug in FNavAgentProperties::IsEquivalent resulting in failing the test for FNavAgentProperties instances having default AgentStepHeight value (-1) #UE4 UE-21977 Change 2724834 on 2015/10/12 by Ori.Cohen PR #1634: Add PxVehicleDriveNW support to PhysXVehicleManager.cpp (Contributed by zeduk) Change 2724850 on 2015/10/12 by Marc.Audy Fix sound not restarting in matinee preview when jumping back along timeline after reaching end #codereview Nick.Darnell Change 2726499 on 2015/10/13 by Ori.Cohen Fix edge case where sphyl length and radius are 0 and they are not properly clamped to 0.1 Change 2726689 on 2015/10/13 by Marc.Audy Make UPackage::PackageFlags private Add debugging for UE-21181 to try and track down when EditorWorld's PackageFlags are getting flagged as PlayInEditor #codereview Mike.Fricker Change 2726862 on 2015/10/13 by Lukasz.Furman removed unused code from DetourNavMeshQuery #ue4 UE-21988 Change 2726888 on 2015/10/13 by Lukasz.Furman fixed observer abort: both mode in behavior tree's cone check decorator #ue4 UE-19375 Change 2726913 on 2015/10/13 by Lukasz.Furman navmesh raycast will use nearest poly containing ray origin instead of just closest one #ue4 UE-19334 Change 2726920 on 2015/10/13 by Marc.Audy Re-unify ULevelStreaming::GetWorldAssetPackageName and GetWorldAssetPackageFName #codereview Dmitriy.Dyomin, Bob.Tellez Change 2726931 on 2015/10/13 by Lukasz.Furman fixed missing Tick event in aborting behavior tree tasks from abandoned subtree #ue4 UE-21777 Change 2728093 on 2015/10/14 by Ori.Cohen Fix edge case of sphyl scale take two. The previous approach did double scaling Change 2728577 on 2015/10/14 by Mieszko.Zielinski Improved navmesh labeling condition #UE4 Change suggested by github user #rb Lukasz.Furman Change 2728587 on 2015/10/14 by Lukasz.Furman fixed crowd simulation for auto possessed pawns placed on level #ue4 #rb Mieszko.Zielinski Change 2728629 on 2015/10/14 by Lukasz.Furman fixed influence of navmesh edges on crowd simulation near end of path #ue4 UE-21380 #rb Mieszko.Zielinski Change 2728678 on 2015/10/14 by Lukasz.Furman added Z check to detour's crowd avoidance segment gathering #ue4 UE-20889 #rb Mieszko.Zielinski Change 2728745 on 2015/10/14 by Lukasz.Furman fixed copy&paste operation in behavior tree's composite decorators subgraphs #ue4 UE-18740 Change 2729276 on 2015/10/14 by Stan.Melax ensure all actors get recreated with new collision shape specification. this wasn't being done for a couple of editing methods. todo: this should be merged into 4.10 #UE-20961 #rb ori.cohen Change 2730709 on 2015/10/15 by Marc.Audy Prevent memory corruption when an invalid controller ID is passed in to the forcefeedback channel functions #rb Lina.Halper Change 2733590 on 2015/10/19 by Benn.Gallagher Fixed various crashes when using undo and redo while manipulating state machines UE 22088 Change 2735143 on 2015/10/20 by Lukasz.Furman clearing behavior tree debugger's state when displayed subtree becomes inactive #ue4 #rb Mieszko.Zielinski Change 2735144 on 2015/10/20 by Lukasz.Furman rebuilding behavior tree graph node order when node is being moved #ue4 #rb Mieszko.Zielinski Change 2735403 on 2015/10/20 by sebastian.kowalczyk Integrated fix for issue UE-18594 "Gameplay Debugger is hijacking the Canvas" issue from 4.10 (2735391). Extended previous fix to care about OSX users - it's possible to configure shortcuts in engine config file now (little different ones for osx platform). Change 2736406 on 2015/10/21 by sebastian.kowalczyk Added new GameplayDebugger as a plugin. Old gameplay debugger is still here to keep backward compatibility but it's deprecated now. Current projects should be moved to use new plugin soon. Change 2736436 on 2015/10/21 by sebastian.kowalczyk Fixed crash in gameplay debugger with player set as debug target. Change 2736437 on 2015/10/21 by sebastian.kowalczyk Added visual indicator around selected pawn to fix FORT-10273 issue. (FN is not using new gd plugin yet). Change 2736489 on 2015/10/21 by sebastian.kowalczyk Hide internal and debug hud classes from drop down lists. Change 2736504 on 2015/10/21 by sebastian.kowalczyk Fix for UE-18548 "EnableGDT does not work correctly in PIE". Change 2736529 on 2015/10/21 by sebastian.kowalczyk Fixed UE-18548 "EnableGDT does not work correctly in PIE" Change 2736588 on 2015/10/21 by sebastian.kowalczyk Removed old log visualizer classes. Change 2736700 on 2015/10/21 by sebastian.kowalczyk Fixed UE-19256 "Perception debug data doesn't get replicated by Gameplay Debuger" for old gameplay debugger module. Change 2737180 on 2015/10/21 by Zak.Middleton #ue4 - Fix UPrimitiveComponent::GetCollisionShape not correctly enforcing bounds limits. #rb Aaron.Mcleran #jira UE-22436 Change 2738084 on 2015/10/22 by sebastian.kowalczyk Better indication of selected pawn for Gameplay Debugger. Change 2738413 on 2015/10/22 by Marc.Audy Disable duplication of worlds/maps via the content browser #jira UE-22200 #rb James.Golding Change 2739743 on 2015/10/23 by bruce.nesbit UE-18707 - Issue with drawing material triangle on canvas #1387 Added DrawTriangleUsingVertexColor Change 2739751 on 2015/10/23 by bruce.nesbit Revised bShowDebugForReticleTarget should not be static #1539 Change 2739788 on 2015/10/23 by bruce.nesbit Revised the 2 functions that used FTriangleRenderer::DrawTriangle to use FTriangleRenderer::DrawTriangleUsingVertexColor Fixed compile error Change 2739870 on 2015/10/23 by Marc.Audy Avoid issues while detaching child components if OnAttachmentChange were to remove a sibling component itself. #jira UE-22362 #rb Zak.Middleton Change 2739882 on 2015/10/23 by sebastian.kowalczyk Fix for UE-20901 "VisualLog redirections are broken after PIE finishes" issue. Change 2740140 on 2015/10/23 by Marc.Audy Ensure that components reregister tick functions after seamless travel #jira UE-20892 #rb Zak.Middleton Change 2740614 on 2015/10/23 by Ori.Cohen Fix linker issues for people wanting to use physics lock lambdas Change 2740674 on 2015/10/23 by Aaron.McLeran Sound Focus Feature Added new parameters to SoundAttenuation settings to allow audio to change behavior based on its angle to the listener - Define the min/max azimuth angle to establish in-focus and non-focus regions - Can scale the priority of a sound based on focus angle - Can attenuate the volume of a sound based on focus angle - Can scale the listener-emitter distance based on focus angle - Distance scale is applied when determining max audible distance for USoundBase - Can opt-out of focus effects for a sound at the USoundBase level #rb Ryan.Vance Change 2741542 on 2015/10/26 by Lukasz.Furman lowered min value clamping in navigation filter properties #ue4 #rb Mieszko.Zielinski Change 2743227 on 2015/10/27 by Marc.Audy Make ASceneCaptureCube subclassable outside of Engine module #jira UE-22609 Make USceneCaptureComponentCube::UpdateContent callable outside of Engine module #jira UE-22610 #rb Jeff.Farris Change 2743255 on 2015/10/27 by Marc.Audy Wrap FActorSpawnParameters class with deprecation warning disable pragma instead of hand implementing copy constructor #rb Jeff.Farris Change 2743729 on 2015/10/27 by Ori.Cohen Fix case where we spawn and adjust location which gives us implicit velocity. #codereview Stan.Melax Change 2746135 on 2015/10/29 by sebastian.kowalczyk Fixed UE-21668 "Saving log filters selected in LogVisualizer causes insane ini file sizes! And doesn't really work." Change 2746437 on 2015/10/29 by Lukasz.Furman pass on verifying behavior tree stack before accessing its elements #ue4 #rb Mieszko.Zielinski Change 2748028 on 2015/10/30 by sebastian.kowalczyk Changed GameplayDebugger's console variable from gd.EQSOnHUD to ai.gd.EQSOnHUD" after suggestion with MieszkoZ. Change 2748184 on 2015/10/30 by Aaron.McLeran UE-22693 Fix for streaming bug - 3rd decoded buffer in initial 3 buffers was not getting submitted to xaudio2 voice resulting in garbled/skipped audio. - Wasn't able to repro the 'cannot read chunk' part of the bug #rb ryan.vance Change 2749255 on 2015/10/31 by sebastian.kowalczyk Fixed ai.gd.EQSOnHUD console variable after rename from gd.EQSOnHUD. Change 2749276 on 2015/10/31 by sebastian.kowalczyk Added switch to toggle highlight of selected actor to GameplayDebugger. Change 2749318 on 2015/10/31 by sebastian.kowalczyk New Gameplay Debugger plugin can be used with old module simultaneously. It's best to configure different keyboard binding for plugin when using old module (it can be set in project settings, for new gameplay debugger plugin - when activated for project). Change 2749337 on 2015/10/31 by sebastian.kowalczyk Fixed GameplayDebugger compilation in shipping/test builds. Change 2749376 on 2015/10/31 by sebastian.kowalczyk Small clean-up in gameplay debugger class for BT. Change 2749931 on 2015/11/02 by James.Golding Add stats to ProcMeshComp Change 2749932 on 2015/11/02 by James.Golding Remove PhysicsThrusterComponent.h from Engine.h Change 2749960 on 2015/11/02 by James.Golding - Fix PS4 compile errors in ActiveSound.cpp - Constructor order of FActiveSound - Shadowed AudioComponent var in CheckOcclusion #RB thomas.sarkanen #codereview aaron.mcleran Change 2749961 on 2015/11/02 by James.Golding Fix PS4 compile errors in GameplayDebuggerBaseObject.cpp - Shadowed DefaultContext function param, now just Context, which matches declaration #RB thomas.sarkanen #codereview sebastian.kowalczyk Change 2750026 on 2015/11/02 by Thomas.Sarkanen Anim Multithreading: thread-safety refactor Segregated access to various parts of anim update data by spitting off a new proxy class (FAnimInstanceProxy) containing all data accessed in Update() and Evaluate() passes. Gated access to the proxy data on the game thread in a number of ways: - Explicit access via GetValueOnGameThread() - this blocks on any existing task, completes and then allows control to return to the accessing function. This allows stuff like Blueprints to continue to operate as normal. - Explicit access via GetValueOnAnyThread() - this ensures that in the limited set of circumstances we need this (Blueprint pure functions mostly) that conditions are met about concurrent access. - Deprecating many APIs on UAnimInstance that should not be used (and in fact are not used at present, happily). Derived classes of UAnimInstance can override the creation of the proxy class to create their own type. We do this for UAnimSingleNodeInstance etc. Any API deprecation should continue to function - no functions have been removed yet. The only things that are not backwards-compatible are direct access to some public member variables for which there is no way to support (e.g. via references, for example UngroupedActivePlayerArrays). Some APIs have been changed to more specifically represent the dependencies involved. For example TickAssetPlayerInstance() used to take a UAnimInstance*, only to use it to simply queue notifies. This has been deprecated and replaced with a new FNotifyQueue API. FNotifyQueue also uses a thread-safe FRandomStream instead of FMath::Rand. Many changes are due to substituting accessor functions for direct variable access. Removed 'service' tick group as we no longer need to segregate the running of our parallel update. Anim nodes that need to do some game thread-side update should register for a pre-update callback delegate in the proxy. See FAnimNode_AnimDynamics for an example of this. Moved UpdateActiveVertexAnims into FAnimRuntime so I can subsume some of the code that was in USkeletalMeshComponent::EvaluateAnimation into UAnimInstance (and hence keep the proxy access private). #rb Martin.Wilson,Lina.Halper #codereview Michael.Noland Change 2750077 on 2015/11/02 by Marc.Audy Expose UInputComponent::BindAction that supports WithKey delegate signature Change 2751767 on 2015/11/03 by Thomas.Sarkanen Added extra support to Anim Blueprint 'fast-path' Added support for negated bools (value gets negated during copy). Added support for copying from struct members (via break struct) and split struct pins. Removed potentially troublesome references to BP-constructed UProperties, replacing them with the property FName. This adds some extra Initialize() overhead, but prevents various crash-on load issues (one when generating the class CRC). Added guard to prevent multiple initialization to save this more expensive work being done more often. #rb Martin.Wilson Change 2752158 on 2015/11/03 by Jeff.Farris Fixed UGameplayStatics::SpawnEmitterAttached() to register the ParticleSystemComponent after it spawns. #rb marc.audy Change 2752159 on 2015/11/03 by Jeff.Farris Improvements to camera lens effects to (EmitterCameraLensEffectBase) - can now specify a transform to align the emitter with the camera - exposed several key parameters to Blueprints - ENGINE_API now applies to the entire class #rb marc.audy Change 2753454 on 2015/11/04 by Thomas.Sarkanen Fixup deprecation warnings fallout from multithreaded update changes. Fixed up use of AnimInstance in Vicon plugin. Fixed up use of AnimInstance in slope warping node. Un-deprecated some APIs to become warning free (these APIs are safe to call but just a 'bad idea if you want to do it right'). Also an extra API to allow for smoother transition: Allow custom allocation/deallocation (including using a proxy member struct) by providing an override point for proxy destruction. #rb Martin.Wilson Change 2754099 on 2015/11/04 by Ori.Cohen Fix for task threads dropping stats (from Gil) #rb Gil.Gribb Change 2754449 on 2015/11/04 by Marc.Audy Ensure that components created from an Actor's blueprint BeginPlay implementation get BeginPlay called on them and register their component ticks #jira UE-20853 Reorganize some booleans to get better bit packing #rb Jeff.Farris #codereview Mieszko.Zielinski Change 2754573 on 2015/11/04 by Aaron.McLeran Fixing audio component PostLoad code to not set all LowPassFilterFrequency values to 0.0f Change 2755345 on 2015/11/05 by Thomas.Sarkanen Added deprecated constructors for various animation contexts Allows existing code to compile if it creates its own contexts from UAnimInstance. #rb James.Golding Change 2755348 on 2015/11/05 by James.Golding Add BP-exposed SetBoundsScale function to PrimitiveComponent #RB thomas.sarkanen Change 2755437 on 2015/11/05 by Marc.Audy Fix compile errors #codereview Thomas.Sarkanen, Mieszko.Zielinski, Aaron.McLeran Change 2755982 on 2015/11/05 by Marc.Audy Move HeaderParse changes for deprecation macro from Core Fix world settings warning Change 2756028 on 2015/11/05 by Marc.Audy Fix shadow variable issue Change 2756090 on 2015/11/05 by Ori.Cohen Improve budget tool so that task threads are computed automatically. #rb Gil.Gribb Change 2756120 on 2015/11/05 by Mieszko.Zielinski Fixed AIController::MoveTo not using DefaultQueryExtent of its navigation data #UE4 #rb Lukasz.Furman Change 2756243 on 2015/11/05 by Mieszko.Zielinski Fixed AI perception sight's "auto-visibility" mechanism totally skipping distance and vision cone checks #UE4 The old way was resulting in false positives when for example observer teleported somewhere far #rb Lukasz.Furman #codereview John.Abercrombie Change 2756280 on 2015/11/05 by Mieszko.Zielinski Minor VLog code cleanup and dumb-fixing visual logger accessing timer manager off of game thread #UE4 #rb Lukasz.Furman Change 2756500 on 2015/11/05 by Mieszko.Zielinski Added sanity-checking to BlueprintNodeHelpers::HasBlueprintFunction and cleaned up its usage #UE4 Also, refactored its parameters into references over pointers. #rb Lukasz.Furman Change 2757041 on 2015/11/06 by Thomas.Sarkanen Removed check() in UAnimInstance::GetProxyOnAnyThread() The check was no longer needed as if we are on the game thread we block until tasks are completed below, and if we are on any other thread we are 'safe' anyway. #rb James.Golding Change 2757207 on 2015/11/06 by Ori.Cohen Fix incorrect root body cache which causes a single frame "freak out" when simulating physics from an animation #rb Lina.Halper Change 2757238 on 2015/11/06 by Marc.Audy Force compiler generated functions to be generated for FHierarchicalSimplification in WorldSettings.h so that they are generated while the deprecation warnings are disabled. #rb Mike.Fricker Change 2757284 on 2015/11/06 by Stan.Melax tapered capsule drawing cloth collision happens with spheres and for the hull or tapered capsule goemetry between any specified pair of spheres. (this was already code reviewed before, but missed the check-in window before streamtime) #rb ori.cohen Change 2757743 on 2015/11/06 by Lukasz.Furman fixed node memory allocations for injected behavior tree decorators #ue4 UE-22783 #rb Mieszko.Zielinski Change 2757772 on 2015/11/06 by Lukasz.Furman added setters for crowd avoidance #ue4 UE-22785 #rb Mieszko.Zielinski Change 2758422 on 2015/11/07 by Lina.Halper Potential fix for invalid root bone index input #jira :/UE-23086 #code review: Ori.Cohen Change 2758429 on 2015/11/07 by Mieszko.Zielinski Reimplemented a fix for AI Sight's "auto seeing" mechanics in a more flexible way #UE4 #jira UE-23089 Change 2758571 on 2015/11/08 by Mieszko.Zielinski Modified ensure condition in UAIPerceptionComponent::OnRegister so it doesn't go off when BP does it's magic when components are being added to a BP actor class #UE4 #jira UE-23080 Change 2758821 on 2015/11/09 by Thomas.Sarkanen Fixed animations no longer playing when using a dedicated server. Uses correct logic to determine whether we are running as a server or not. #rb Martin.Wilson Change 2758920 on 2015/11/09 by Marc.Audy Don't dereference weak object pointers repeatedly in FBoneContainer::Initialize #rb Lina.Halper Change 2758944 on 2015/11/09 by Ori.Cohen Fix crash when stats are only on one thread and budget mode is used Change 2758967 on 2015/11/09 by Benn.Gallagher Fix for crash undoing notify socket changes in Persona, needed to recache the notify track data after the transaction had reserialized the sequence. #jira UE-22963 Change 2758973 on 2015/11/09 by Benn.Gallagher Added new 'Random Player' node for anim graphs allowing the user to play a selection of animations in a random order with certain randomised paramers. Also allows 'Shuffle Mode' to act more like a playlist in that it will play everything on the list before repeating. #rb Bruce.Nesbit Change 2759219 on 2015/11/09 by Ori.Cohen Character perf test is now looking at stats directly and sending to analytics #RB Ben.Salem Change 2759398 on 2015/11/09 by Lina.Halper Fix issue where placed montages are not playing. - the issue is that IsPlaying does not consider montage, but SetPlaying does. It is asymmetry, so I made it same. However, there are other functions that need to be re-looked at wr.t. montage #code review: Thomas.Sarkanen #RB: Marc.Audy Change 2759491 on 2015/11/09 by Lina.Halper #Anim: Fix not getting input correctly for Copy Pose node #RB: Marc.Audy Change 2759602 on 2015/11/09 by Marc.Audy Fix imporperly named struct Change 2759795 on 2015/11/09 by Aaron.McLeran UE-23145 Adding a Priority value to USoundBase to use in concurrency evaluation and sorting wave instances for voice stealing. #rb zak.middleton Change 2760081 on 2015/11/09 by Aaron.McLeran UE-23091 Adding more logging for NaN checks and fixing one source of NaNs for audio. OmniDirectional Math Explanation: For XAudio2, because we do our own distance-attenuation calculations, we use the X3dAudio2 API to simply compute a speaker-map for spatialization and force the listener to be at the origin and the emitter to be on the unit-circle. Thus, from XAudio2's perspective, all distances for every listener-emitter pair will be 1.0. So in order to use the InnerRadius blending feature, we need to trick it into doing a an inner radius blend relative to a distance of 1.0. For example, if OmniRadius and Distance are the same, then the "NormalizedOmniRadius" is 1.0 and XAudio2 will begin its "blend" of the sound to an omni-directional speaker map. If Emitter-listener distance is less than the OmniRadius, we'll want to do more blending to an omni-directional speaker map, but we need to set the InnerRadius to something greater than 1.0 (i.e. so that the normalized distance of 1.0 will be treated as less than the InnerRadius). To do "full" omni-directional blending, the emitter-listener distance will be 0 or close to zero, and the NormalizedOmniRadius will be very large (i.e. close to infiinity). The previous math just set the NormalizedOmniRadius to FLT_MAX which is fine but that number is eventually squared before making the API call. FLT_MAX squared is INF. Note: I do not think we need to square the OmniRadius in: Emitter.InnerRadius = OmniRadius*OmniRadius; But I am keeping it t here because of legacy content which depends on that behavior. #rb zak.middleton hange 2760401 on 2015/11/10 by Thomas.Sarkanen@Thomas.Sarkanen-Dev-Framework Re-instated deleted protected functions in UAnimInstance. Fixed access of UAnimInstance in FAnimNode_StateMachine. #rb Martin.Wilson Change 2760407 on 2015/11/10 by Jurre.deBaare Construct raw meshes for spline meshes now uses the render data instead of original model data (preserves tangents/normals) Change 2760468 on 2015/11/10 by Benn.Gallagher Anim Dynamics optimizations, cached iteration independant data to reduce footprint of iteration on limits. #rb Graeme.Thornton Change 2760613 on 2015/11/10 by Jeff.Farris Fixed async collision completion delegate potentially firing repeatedly. (UE-23149) #cr marc.audy #codereview lina.halper Change 2760795 on 2015/11/10 by Marc.Audy Don't compile in pointless AddReferencedObjects when with editoronly data not defined Minor coding standard cleanup (NULL and auto) Change 2760848 on 2015/11/10 by Benn.Gallagher Fix to anim instance proxy to not rely on state machine initialization to bind native delegates as nested state machines are not guaranteed to be initialized. This was fixed in UAnimInstance originally but broken again by the proxy instance code. #jira UE-23164 #rb Martin.Wilson Change 2760866 on 2015/11/10 by Marc.Audy Manage transient visualization components for camera component in the same way that sprite component for other actor components are #rb Mike.Beach Change 2760963 on 2015/11/10 by Marc.Audy Since construction script can cause actors to be spawned don't use a ranged for to iterate #jira UE-22639 #rb Jeff.Farris #codereview Dmitriy.Dyomin Change 2762297 on 2015/11/11 by James.Golding UE-23086 Don't ensure in SetRootBodyIndex when Bodies array is empty (ie no physics state created) #rb martin.wilson #codereview ori.cohen, lina.halper Change 2763566 on 2015/11/11 by Lina.Halper FAnimNode_CopyPoseFromMesh::Evaluate - was accessing skeleton joint, not mesh joint. #RB: Laurent.Delayen Change 2763926 on 2015/11/12 by Thomas.Sarkanen Fix anim notifies not firing from single anim instances UE-23248 - Anim Notifies are not working for Animation Sequences UE-23249 - Anim Notifies using Sound Cues do not work #rb James.Golding Change 2764039 on 2015/11/12 by Jurre.deBaare Fix for issue with incorrect material indices after reducing a skeletal mesh with non LOD0 mesh as BaseLOD (OR-9243) #rb Lina.Halper Change 2764307 on 2015/11/12 by Jurre.deBaare VS2015 SSF library Change 2764314 on 2015/11/12 by Stan.Melax crashfix was putting bad bodies to sleep at start Fatal error! Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x00000000 UE4Editor-Engine.dll!USkeletalMeshComponent::InitArticulated() [...\\engine\\source\\runtime\\engine\\private\\skeletalmeshcomponentphysics.cpp:875] On some skeletalmeshcomponent, some bodies aren't getting created correctly. Trying to force them to sleep was causing a crash - it expected instantiated physx bodies. Seems that all the rest of the code is able to tolerate bad bodies. Added check to ensure physx body exists before trying to force it to sleep. not sure if bad bodies are the norm or if this fix is just more "kicking the can down the road". #codereview ori.cohen Change 2764343 on 2015/11/12 by Jurre.deBaare - Fixed crash when building a LOD with SubActors.Num < 2 - Force HLOD level slider is now always enabled, however won't show complete image if not all HLODs are build - LODActor tree view item now scrolls into view if selected in the world - Set bAllowCullDistanceVolume to false for LODActor's static mesh components by default - Added 7zip files - Fixed issue with WinINet complaining about http-request without 'http://' prefix - Changed % reduced or original triangles display string, now uses float instead of int (for < 1% reductions) - Override texture sizes and automatic texture bias - Fixed issue with incorrect material merging, not picking up it required mesh-data during baking. Added extra conditions for rendering with mesh-data. - Now incorporate static meshes with opague materials into HLOD merging - Fixed issue with incorrect normals after merging meshes who's owning components had been negatively scaled - Fixed issue with incorrect texture size being set from MergeActor window (was only changing .X component) - Fixed issue with material merging when meshes with multiple LODs are merged, right now only merges LOD0's together if we are also merging the materials (otherwise, merge each LOD) - Added ENUM for texture scaling/resizing type that has to be applied while merging the materials - Added detail customization class for FMaterialProxySettings #rb James.Golding [CL 2765024 by Marc Audy in Main branch]
2015-11-12 18:11:48 -05:00
void OnListenerForgetsActor(const UAIPerceptionComponent& Listener, AActor& ActorToForget);
void OnListenerForgetsAll(const UAIPerceptionComponent& Listener);
void OnListenerConfigUpdated(FAISenseID SenseID, const UAIPerceptionComponent& Listener);
Copying //UE4/Dev-Framework to Dev-Main (//UE4/Dev-Main) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2720406 on 2015/10/07 by Aaron.McLeran Audio optimization Don't search for nearest listener if there's only 1 listener. Change 2720411 on 2015/10/07 by Aaron.McLeran Fixing HRTF spatialization code with recent changes to stereo spatialization. HRTF emitter posiition doesn't need to be converted to XAudio2 coordinates. Change 2723829 on 2015/10/09 by Mieszko.Zielinski Fixed NavigationSystem trying to set label of newly spawned navigation data #UE4 UE-21880 Change 2723873 on 2015/10/09 by Mieszko.Zielinski Fixed a bug in FNavAgentProperties::IsEquivalent resulting in failing the test for FNavAgentProperties instances having default AgentStepHeight value (-1) #UE4 UE-21977 Change 2724834 on 2015/10/12 by Ori.Cohen PR #1634: Add PxVehicleDriveNW support to PhysXVehicleManager.cpp (Contributed by zeduk) Change 2724850 on 2015/10/12 by Marc.Audy Fix sound not restarting in matinee preview when jumping back along timeline after reaching end #codereview Nick.Darnell Change 2726499 on 2015/10/13 by Ori.Cohen Fix edge case where sphyl length and radius are 0 and they are not properly clamped to 0.1 Change 2726689 on 2015/10/13 by Marc.Audy Make UPackage::PackageFlags private Add debugging for UE-21181 to try and track down when EditorWorld's PackageFlags are getting flagged as PlayInEditor #codereview Mike.Fricker Change 2726862 on 2015/10/13 by Lukasz.Furman removed unused code from DetourNavMeshQuery #ue4 UE-21988 Change 2726888 on 2015/10/13 by Lukasz.Furman fixed observer abort: both mode in behavior tree's cone check decorator #ue4 UE-19375 Change 2726913 on 2015/10/13 by Lukasz.Furman navmesh raycast will use nearest poly containing ray origin instead of just closest one #ue4 UE-19334 Change 2726920 on 2015/10/13 by Marc.Audy Re-unify ULevelStreaming::GetWorldAssetPackageName and GetWorldAssetPackageFName #codereview Dmitriy.Dyomin, Bob.Tellez Change 2726931 on 2015/10/13 by Lukasz.Furman fixed missing Tick event in aborting behavior tree tasks from abandoned subtree #ue4 UE-21777 Change 2728093 on 2015/10/14 by Ori.Cohen Fix edge case of sphyl scale take two. The previous approach did double scaling Change 2728577 on 2015/10/14 by Mieszko.Zielinski Improved navmesh labeling condition #UE4 Change suggested by github user #rb Lukasz.Furman Change 2728587 on 2015/10/14 by Lukasz.Furman fixed crowd simulation for auto possessed pawns placed on level #ue4 #rb Mieszko.Zielinski Change 2728629 on 2015/10/14 by Lukasz.Furman fixed influence of navmesh edges on crowd simulation near end of path #ue4 UE-21380 #rb Mieszko.Zielinski Change 2728678 on 2015/10/14 by Lukasz.Furman added Z check to detour's crowd avoidance segment gathering #ue4 UE-20889 #rb Mieszko.Zielinski Change 2728745 on 2015/10/14 by Lukasz.Furman fixed copy&paste operation in behavior tree's composite decorators subgraphs #ue4 UE-18740 Change 2729276 on 2015/10/14 by Stan.Melax ensure all actors get recreated with new collision shape specification. this wasn't being done for a couple of editing methods. todo: this should be merged into 4.10 #UE-20961 #rb ori.cohen Change 2730709 on 2015/10/15 by Marc.Audy Prevent memory corruption when an invalid controller ID is passed in to the forcefeedback channel functions #rb Lina.Halper Change 2733590 on 2015/10/19 by Benn.Gallagher Fixed various crashes when using undo and redo while manipulating state machines UE 22088 Change 2735143 on 2015/10/20 by Lukasz.Furman clearing behavior tree debugger's state when displayed subtree becomes inactive #ue4 #rb Mieszko.Zielinski Change 2735144 on 2015/10/20 by Lukasz.Furman rebuilding behavior tree graph node order when node is being moved #ue4 #rb Mieszko.Zielinski Change 2735403 on 2015/10/20 by sebastian.kowalczyk Integrated fix for issue UE-18594 "Gameplay Debugger is hijacking the Canvas" issue from 4.10 (2735391). Extended previous fix to care about OSX users - it's possible to configure shortcuts in engine config file now (little different ones for osx platform). Change 2736406 on 2015/10/21 by sebastian.kowalczyk Added new GameplayDebugger as a plugin. Old gameplay debugger is still here to keep backward compatibility but it's deprecated now. Current projects should be moved to use new plugin soon. Change 2736436 on 2015/10/21 by sebastian.kowalczyk Fixed crash in gameplay debugger with player set as debug target. Change 2736437 on 2015/10/21 by sebastian.kowalczyk Added visual indicator around selected pawn to fix FORT-10273 issue. (FN is not using new gd plugin yet). Change 2736489 on 2015/10/21 by sebastian.kowalczyk Hide internal and debug hud classes from drop down lists. Change 2736504 on 2015/10/21 by sebastian.kowalczyk Fix for UE-18548 "EnableGDT does not work correctly in PIE". Change 2736529 on 2015/10/21 by sebastian.kowalczyk Fixed UE-18548 "EnableGDT does not work correctly in PIE" Change 2736588 on 2015/10/21 by sebastian.kowalczyk Removed old log visualizer classes. Change 2736700 on 2015/10/21 by sebastian.kowalczyk Fixed UE-19256 "Perception debug data doesn't get replicated by Gameplay Debuger" for old gameplay debugger module. Change 2737180 on 2015/10/21 by Zak.Middleton #ue4 - Fix UPrimitiveComponent::GetCollisionShape not correctly enforcing bounds limits. #rb Aaron.Mcleran #jira UE-22436 Change 2738084 on 2015/10/22 by sebastian.kowalczyk Better indication of selected pawn for Gameplay Debugger. Change 2738413 on 2015/10/22 by Marc.Audy Disable duplication of worlds/maps via the content browser #jira UE-22200 #rb James.Golding Change 2739743 on 2015/10/23 by bruce.nesbit UE-18707 - Issue with drawing material triangle on canvas #1387 Added DrawTriangleUsingVertexColor Change 2739751 on 2015/10/23 by bruce.nesbit Revised bShowDebugForReticleTarget should not be static #1539 Change 2739788 on 2015/10/23 by bruce.nesbit Revised the 2 functions that used FTriangleRenderer::DrawTriangle to use FTriangleRenderer::DrawTriangleUsingVertexColor Fixed compile error Change 2739870 on 2015/10/23 by Marc.Audy Avoid issues while detaching child components if OnAttachmentChange were to remove a sibling component itself. #jira UE-22362 #rb Zak.Middleton Change 2739882 on 2015/10/23 by sebastian.kowalczyk Fix for UE-20901 "VisualLog redirections are broken after PIE finishes" issue. Change 2740140 on 2015/10/23 by Marc.Audy Ensure that components reregister tick functions after seamless travel #jira UE-20892 #rb Zak.Middleton Change 2740614 on 2015/10/23 by Ori.Cohen Fix linker issues for people wanting to use physics lock lambdas Change 2740674 on 2015/10/23 by Aaron.McLeran Sound Focus Feature Added new parameters to SoundAttenuation settings to allow audio to change behavior based on its angle to the listener - Define the min/max azimuth angle to establish in-focus and non-focus regions - Can scale the priority of a sound based on focus angle - Can attenuate the volume of a sound based on focus angle - Can scale the listener-emitter distance based on focus angle - Distance scale is applied when determining max audible distance for USoundBase - Can opt-out of focus effects for a sound at the USoundBase level #rb Ryan.Vance Change 2741542 on 2015/10/26 by Lukasz.Furman lowered min value clamping in navigation filter properties #ue4 #rb Mieszko.Zielinski Change 2743227 on 2015/10/27 by Marc.Audy Make ASceneCaptureCube subclassable outside of Engine module #jira UE-22609 Make USceneCaptureComponentCube::UpdateContent callable outside of Engine module #jira UE-22610 #rb Jeff.Farris Change 2743255 on 2015/10/27 by Marc.Audy Wrap FActorSpawnParameters class with deprecation warning disable pragma instead of hand implementing copy constructor #rb Jeff.Farris Change 2743729 on 2015/10/27 by Ori.Cohen Fix case where we spawn and adjust location which gives us implicit velocity. #codereview Stan.Melax Change 2746135 on 2015/10/29 by sebastian.kowalczyk Fixed UE-21668 "Saving log filters selected in LogVisualizer causes insane ini file sizes! And doesn't really work." Change 2746437 on 2015/10/29 by Lukasz.Furman pass on verifying behavior tree stack before accessing its elements #ue4 #rb Mieszko.Zielinski Change 2748028 on 2015/10/30 by sebastian.kowalczyk Changed GameplayDebugger's console variable from gd.EQSOnHUD to ai.gd.EQSOnHUD" after suggestion with MieszkoZ. Change 2748184 on 2015/10/30 by Aaron.McLeran UE-22693 Fix for streaming bug - 3rd decoded buffer in initial 3 buffers was not getting submitted to xaudio2 voice resulting in garbled/skipped audio. - Wasn't able to repro the 'cannot read chunk' part of the bug #rb ryan.vance Change 2749255 on 2015/10/31 by sebastian.kowalczyk Fixed ai.gd.EQSOnHUD console variable after rename from gd.EQSOnHUD. Change 2749276 on 2015/10/31 by sebastian.kowalczyk Added switch to toggle highlight of selected actor to GameplayDebugger. Change 2749318 on 2015/10/31 by sebastian.kowalczyk New Gameplay Debugger plugin can be used with old module simultaneously. It's best to configure different keyboard binding for plugin when using old module (it can be set in project settings, for new gameplay debugger plugin - when activated for project). Change 2749337 on 2015/10/31 by sebastian.kowalczyk Fixed GameplayDebugger compilation in shipping/test builds. Change 2749376 on 2015/10/31 by sebastian.kowalczyk Small clean-up in gameplay debugger class for BT. Change 2749931 on 2015/11/02 by James.Golding Add stats to ProcMeshComp Change 2749932 on 2015/11/02 by James.Golding Remove PhysicsThrusterComponent.h from Engine.h Change 2749960 on 2015/11/02 by James.Golding - Fix PS4 compile errors in ActiveSound.cpp - Constructor order of FActiveSound - Shadowed AudioComponent var in CheckOcclusion #RB thomas.sarkanen #codereview aaron.mcleran Change 2749961 on 2015/11/02 by James.Golding Fix PS4 compile errors in GameplayDebuggerBaseObject.cpp - Shadowed DefaultContext function param, now just Context, which matches declaration #RB thomas.sarkanen #codereview sebastian.kowalczyk Change 2750026 on 2015/11/02 by Thomas.Sarkanen Anim Multithreading: thread-safety refactor Segregated access to various parts of anim update data by spitting off a new proxy class (FAnimInstanceProxy) containing all data accessed in Update() and Evaluate() passes. Gated access to the proxy data on the game thread in a number of ways: - Explicit access via GetValueOnGameThread() - this blocks on any existing task, completes and then allows control to return to the accessing function. This allows stuff like Blueprints to continue to operate as normal. - Explicit access via GetValueOnAnyThread() - this ensures that in the limited set of circumstances we need this (Blueprint pure functions mostly) that conditions are met about concurrent access. - Deprecating many APIs on UAnimInstance that should not be used (and in fact are not used at present, happily). Derived classes of UAnimInstance can override the creation of the proxy class to create their own type. We do this for UAnimSingleNodeInstance etc. Any API deprecation should continue to function - no functions have been removed yet. The only things that are not backwards-compatible are direct access to some public member variables for which there is no way to support (e.g. via references, for example UngroupedActivePlayerArrays). Some APIs have been changed to more specifically represent the dependencies involved. For example TickAssetPlayerInstance() used to take a UAnimInstance*, only to use it to simply queue notifies. This has been deprecated and replaced with a new FNotifyQueue API. FNotifyQueue also uses a thread-safe FRandomStream instead of FMath::Rand. Many changes are due to substituting accessor functions for direct variable access. Removed 'service' tick group as we no longer need to segregate the running of our parallel update. Anim nodes that need to do some game thread-side update should register for a pre-update callback delegate in the proxy. See FAnimNode_AnimDynamics for an example of this. Moved UpdateActiveVertexAnims into FAnimRuntime so I can subsume some of the code that was in USkeletalMeshComponent::EvaluateAnimation into UAnimInstance (and hence keep the proxy access private). #rb Martin.Wilson,Lina.Halper #codereview Michael.Noland Change 2750077 on 2015/11/02 by Marc.Audy Expose UInputComponent::BindAction that supports WithKey delegate signature Change 2751767 on 2015/11/03 by Thomas.Sarkanen Added extra support to Anim Blueprint 'fast-path' Added support for negated bools (value gets negated during copy). Added support for copying from struct members (via break struct) and split struct pins. Removed potentially troublesome references to BP-constructed UProperties, replacing them with the property FName. This adds some extra Initialize() overhead, but prevents various crash-on load issues (one when generating the class CRC). Added guard to prevent multiple initialization to save this more expensive work being done more often. #rb Martin.Wilson Change 2752158 on 2015/11/03 by Jeff.Farris Fixed UGameplayStatics::SpawnEmitterAttached() to register the ParticleSystemComponent after it spawns. #rb marc.audy Change 2752159 on 2015/11/03 by Jeff.Farris Improvements to camera lens effects to (EmitterCameraLensEffectBase) - can now specify a transform to align the emitter with the camera - exposed several key parameters to Blueprints - ENGINE_API now applies to the entire class #rb marc.audy Change 2753454 on 2015/11/04 by Thomas.Sarkanen Fixup deprecation warnings fallout from multithreaded update changes. Fixed up use of AnimInstance in Vicon plugin. Fixed up use of AnimInstance in slope warping node. Un-deprecated some APIs to become warning free (these APIs are safe to call but just a 'bad idea if you want to do it right'). Also an extra API to allow for smoother transition: Allow custom allocation/deallocation (including using a proxy member struct) by providing an override point for proxy destruction. #rb Martin.Wilson Change 2754099 on 2015/11/04 by Ori.Cohen Fix for task threads dropping stats (from Gil) #rb Gil.Gribb Change 2754449 on 2015/11/04 by Marc.Audy Ensure that components created from an Actor's blueprint BeginPlay implementation get BeginPlay called on them and register their component ticks #jira UE-20853 Reorganize some booleans to get better bit packing #rb Jeff.Farris #codereview Mieszko.Zielinski Change 2754573 on 2015/11/04 by Aaron.McLeran Fixing audio component PostLoad code to not set all LowPassFilterFrequency values to 0.0f Change 2755345 on 2015/11/05 by Thomas.Sarkanen Added deprecated constructors for various animation contexts Allows existing code to compile if it creates its own contexts from UAnimInstance. #rb James.Golding Change 2755348 on 2015/11/05 by James.Golding Add BP-exposed SetBoundsScale function to PrimitiveComponent #RB thomas.sarkanen Change 2755437 on 2015/11/05 by Marc.Audy Fix compile errors #codereview Thomas.Sarkanen, Mieszko.Zielinski, Aaron.McLeran Change 2755982 on 2015/11/05 by Marc.Audy Move HeaderParse changes for deprecation macro from Core Fix world settings warning Change 2756028 on 2015/11/05 by Marc.Audy Fix shadow variable issue Change 2756090 on 2015/11/05 by Ori.Cohen Improve budget tool so that task threads are computed automatically. #rb Gil.Gribb Change 2756120 on 2015/11/05 by Mieszko.Zielinski Fixed AIController::MoveTo not using DefaultQueryExtent of its navigation data #UE4 #rb Lukasz.Furman Change 2756243 on 2015/11/05 by Mieszko.Zielinski Fixed AI perception sight's "auto-visibility" mechanism totally skipping distance and vision cone checks #UE4 The old way was resulting in false positives when for example observer teleported somewhere far #rb Lukasz.Furman #codereview John.Abercrombie Change 2756280 on 2015/11/05 by Mieszko.Zielinski Minor VLog code cleanup and dumb-fixing visual logger accessing timer manager off of game thread #UE4 #rb Lukasz.Furman Change 2756500 on 2015/11/05 by Mieszko.Zielinski Added sanity-checking to BlueprintNodeHelpers::HasBlueprintFunction and cleaned up its usage #UE4 Also, refactored its parameters into references over pointers. #rb Lukasz.Furman Change 2757041 on 2015/11/06 by Thomas.Sarkanen Removed check() in UAnimInstance::GetProxyOnAnyThread() The check was no longer needed as if we are on the game thread we block until tasks are completed below, and if we are on any other thread we are 'safe' anyway. #rb James.Golding Change 2757207 on 2015/11/06 by Ori.Cohen Fix incorrect root body cache which causes a single frame "freak out" when simulating physics from an animation #rb Lina.Halper Change 2757238 on 2015/11/06 by Marc.Audy Force compiler generated functions to be generated for FHierarchicalSimplification in WorldSettings.h so that they are generated while the deprecation warnings are disabled. #rb Mike.Fricker Change 2757284 on 2015/11/06 by Stan.Melax tapered capsule drawing cloth collision happens with spheres and for the hull or tapered capsule goemetry between any specified pair of spheres. (this was already code reviewed before, but missed the check-in window before streamtime) #rb ori.cohen Change 2757743 on 2015/11/06 by Lukasz.Furman fixed node memory allocations for injected behavior tree decorators #ue4 UE-22783 #rb Mieszko.Zielinski Change 2757772 on 2015/11/06 by Lukasz.Furman added setters for crowd avoidance #ue4 UE-22785 #rb Mieszko.Zielinski Change 2758422 on 2015/11/07 by Lina.Halper Potential fix for invalid root bone index input #jira :/UE-23086 #code review: Ori.Cohen Change 2758429 on 2015/11/07 by Mieszko.Zielinski Reimplemented a fix for AI Sight's "auto seeing" mechanics in a more flexible way #UE4 #jira UE-23089 Change 2758571 on 2015/11/08 by Mieszko.Zielinski Modified ensure condition in UAIPerceptionComponent::OnRegister so it doesn't go off when BP does it's magic when components are being added to a BP actor class #UE4 #jira UE-23080 Change 2758821 on 2015/11/09 by Thomas.Sarkanen Fixed animations no longer playing when using a dedicated server. Uses correct logic to determine whether we are running as a server or not. #rb Martin.Wilson Change 2758920 on 2015/11/09 by Marc.Audy Don't dereference weak object pointers repeatedly in FBoneContainer::Initialize #rb Lina.Halper Change 2758944 on 2015/11/09 by Ori.Cohen Fix crash when stats are only on one thread and budget mode is used Change 2758967 on 2015/11/09 by Benn.Gallagher Fix for crash undoing notify socket changes in Persona, needed to recache the notify track data after the transaction had reserialized the sequence. #jira UE-22963 Change 2758973 on 2015/11/09 by Benn.Gallagher Added new 'Random Player' node for anim graphs allowing the user to play a selection of animations in a random order with certain randomised paramers. Also allows 'Shuffle Mode' to act more like a playlist in that it will play everything on the list before repeating. #rb Bruce.Nesbit Change 2759219 on 2015/11/09 by Ori.Cohen Character perf test is now looking at stats directly and sending to analytics #RB Ben.Salem Change 2759398 on 2015/11/09 by Lina.Halper Fix issue where placed montages are not playing. - the issue is that IsPlaying does not consider montage, but SetPlaying does. It is asymmetry, so I made it same. However, there are other functions that need to be re-looked at wr.t. montage #code review: Thomas.Sarkanen #RB: Marc.Audy Change 2759491 on 2015/11/09 by Lina.Halper #Anim: Fix not getting input correctly for Copy Pose node #RB: Marc.Audy Change 2759602 on 2015/11/09 by Marc.Audy Fix imporperly named struct Change 2759795 on 2015/11/09 by Aaron.McLeran UE-23145 Adding a Priority value to USoundBase to use in concurrency evaluation and sorting wave instances for voice stealing. #rb zak.middleton Change 2760081 on 2015/11/09 by Aaron.McLeran UE-23091 Adding more logging for NaN checks and fixing one source of NaNs for audio. OmniDirectional Math Explanation: For XAudio2, because we do our own distance-attenuation calculations, we use the X3dAudio2 API to simply compute a speaker-map for spatialization and force the listener to be at the origin and the emitter to be on the unit-circle. Thus, from XAudio2's perspective, all distances for every listener-emitter pair will be 1.0. So in order to use the InnerRadius blending feature, we need to trick it into doing a an inner radius blend relative to a distance of 1.0. For example, if OmniRadius and Distance are the same, then the "NormalizedOmniRadius" is 1.0 and XAudio2 will begin its "blend" of the sound to an omni-directional speaker map. If Emitter-listener distance is less than the OmniRadius, we'll want to do more blending to an omni-directional speaker map, but we need to set the InnerRadius to something greater than 1.0 (i.e. so that the normalized distance of 1.0 will be treated as less than the InnerRadius). To do "full" omni-directional blending, the emitter-listener distance will be 0 or close to zero, and the NormalizedOmniRadius will be very large (i.e. close to infiinity). The previous math just set the NormalizedOmniRadius to FLT_MAX which is fine but that number is eventually squared before making the API call. FLT_MAX squared is INF. Note: I do not think we need to square the OmniRadius in: Emitter.InnerRadius = OmniRadius*OmniRadius; But I am keeping it t here because of legacy content which depends on that behavior. #rb zak.middleton hange 2760401 on 2015/11/10 by Thomas.Sarkanen@Thomas.Sarkanen-Dev-Framework Re-instated deleted protected functions in UAnimInstance. Fixed access of UAnimInstance in FAnimNode_StateMachine. #rb Martin.Wilson Change 2760407 on 2015/11/10 by Jurre.deBaare Construct raw meshes for spline meshes now uses the render data instead of original model data (preserves tangents/normals) Change 2760468 on 2015/11/10 by Benn.Gallagher Anim Dynamics optimizations, cached iteration independant data to reduce footprint of iteration on limits. #rb Graeme.Thornton Change 2760613 on 2015/11/10 by Jeff.Farris Fixed async collision completion delegate potentially firing repeatedly. (UE-23149) #cr marc.audy #codereview lina.halper Change 2760795 on 2015/11/10 by Marc.Audy Don't compile in pointless AddReferencedObjects when with editoronly data not defined Minor coding standard cleanup (NULL and auto) Change 2760848 on 2015/11/10 by Benn.Gallagher Fix to anim instance proxy to not rely on state machine initialization to bind native delegates as nested state machines are not guaranteed to be initialized. This was fixed in UAnimInstance originally but broken again by the proxy instance code. #jira UE-23164 #rb Martin.Wilson Change 2760866 on 2015/11/10 by Marc.Audy Manage transient visualization components for camera component in the same way that sprite component for other actor components are #rb Mike.Beach Change 2760963 on 2015/11/10 by Marc.Audy Since construction script can cause actors to be spawned don't use a ranged for to iterate #jira UE-22639 #rb Jeff.Farris #codereview Dmitriy.Dyomin Change 2762297 on 2015/11/11 by James.Golding UE-23086 Don't ensure in SetRootBodyIndex when Bodies array is empty (ie no physics state created) #rb martin.wilson #codereview ori.cohen, lina.halper Change 2763566 on 2015/11/11 by Lina.Halper FAnimNode_CopyPoseFromMesh::Evaluate - was accessing skeleton joint, not mesh joint. #RB: Laurent.Delayen Change 2763926 on 2015/11/12 by Thomas.Sarkanen Fix anim notifies not firing from single anim instances UE-23248 - Anim Notifies are not working for Animation Sequences UE-23249 - Anim Notifies using Sound Cues do not work #rb James.Golding Change 2764039 on 2015/11/12 by Jurre.deBaare Fix for issue with incorrect material indices after reducing a skeletal mesh with non LOD0 mesh as BaseLOD (OR-9243) #rb Lina.Halper Change 2764307 on 2015/11/12 by Jurre.deBaare VS2015 SSF library Change 2764314 on 2015/11/12 by Stan.Melax crashfix was putting bad bodies to sleep at start Fatal error! Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x00000000 UE4Editor-Engine.dll!USkeletalMeshComponent::InitArticulated() [...\\engine\\source\\runtime\\engine\\private\\skeletalmeshcomponentphysics.cpp:875] On some skeletalmeshcomponent, some bodies aren't getting created correctly. Trying to force them to sleep was causing a crash - it expected instantiated physx bodies. Seems that all the rest of the code is able to tolerate bad bodies. Added check to ensure physx body exists before trying to force it to sleep. not sure if bad bodies are the norm or if this fix is just more "kicking the can down the road". #codereview ori.cohen Change 2764343 on 2015/11/12 by Jurre.deBaare - Fixed crash when building a LOD with SubActors.Num < 2 - Force HLOD level slider is now always enabled, however won't show complete image if not all HLODs are build - LODActor tree view item now scrolls into view if selected in the world - Set bAllowCullDistanceVolume to false for LODActor's static mesh components by default - Added 7zip files - Fixed issue with WinINet complaining about http-request without 'http://' prefix - Changed % reduced or original triangles display string, now uses float instead of int (for < 1% reductions) - Override texture sizes and automatic texture bias - Fixed issue with incorrect material merging, not picking up it required mesh-data during baking. Added extra conditions for rendering with mesh-data. - Now incorporate static meshes with opague materials into HLOD merging - Fixed issue with incorrect normals after merging meshes who's owning components had been negatively scaled - Fixed issue with incorrect texture size being set from MergeActor window (was only changing .X component) - Fixed issue with material merging when meshes with multiple LODs are merged, right now only merges LOD0's together if we are also merging the materials (otherwise, merge each LOD) - Added ENUM for texture scaling/resizing type that has to be applied while merging the materials - Added detail customization class for FMaterialProxySettings #rb James.Golding [CL 2765024 by Marc Audy in Main branch]
2015-11-12 18:11:48 -05:00
void RegisterDelayedStimulus(FPerceptionListenerID ListenerId, float Delay, AActor* Instigator, const FAIStimulus& Stimulus);
Merging using UE4-Fortnite-To-UE4 from CL 2261973 Includes the following engine-level changes (among others; biggest change is enabling world assets by default): CL 2252857 added dynamic allocations for path finding, removed hardcoded limit of 128 polys in path corridor CL 2256142 Added support for native arrays in JSON object converter. - Permissive in treating arrays of size 1 and scalars as equivalent - Excess elements in JSON are ignored. Serialization succeeds but a warning is logged CL 2256073 Fixed a bug in ARecastNavMesh::BatchRaycast resulting in NaN hit locations CL 2253797 #UE4 More aggressively setting RF_Public and RF_Standalone flags on maps and ensuring world names match package names. This is necessary because umaps are currently being managed outside of the content browser and it is causing a few issues. Also, packages containing maps now synthesize asset data when the package contains absolutely no asset data (probably because the UWorld in it was not RF_Public at the time it was saved due to a previous bug). CL 2258142 #UE4 Added a GC during map load that reclaims memory allocated during load/init. This is needed to finish the load on low-memory devices in games that allocate more memory after load. CL 2247003 Added homing to ProjectileMovementComponent - Homing requires both a bool and a target component to be set, the strength is determined by a customizable variable - Both homing and gravity are now applied in the new virtual function "CalculateAcceleration" CL 2247249 Moved the homing modification to acceleration occur in a separate function specifically for homing CL 2257043 - Guard net dormancy calls against executing on clients, based on thread with DaveR and JohnP; This particular case was the result of an intentionally client-authoritative actor calling the dormancy functions via inheritance CL 2245629 #UE4 - fixed json TryGetNumber to round negatives appropriately CL 2255312 #UE4 Enabling World Assets by default. CL 2260956 Analytics ET now loads HTTP at StartupModule so the module will be available during ShutdownModule to flush events CL 2245571 GenericTeamAgentInterface can now retrieve attitude of an agent towards a given actor #UE4 - Made PerceptionSystem's sight sense take advantage of that CL 2246897 Fixed perception listeners not being removed from the PerceptionSystem on Owner's end play #UE4 - addresses TTP#343392 CL 2260634 added more debug data for NaN in crowd simulation CL 2248387 Added possibility to debug multiple EQS queries with GameplayDebugger. #ue4 Fixed network replication from bandwidth point of view for data in GameplayDebugger. #ue4 CL 2253281 Added additional information to the visual logger for UBTCompositeNode::DoDecoratorsAllowExecution - We now keep track of whether a decorator allows execution, in addition to the existing log for not allowing execution CL 2255310 #UE4 The world browser module now listens to WorldAdded/WorldDestroyed events instead of WorldInit/WorldCleanup events. Worlds can be initialized without being the editor world and this handles that case. CL 2258256 #UE4 Replacing the SOpenLevelDialog with a new generic SAssetDialog. This dialog will be used as a generic Open or Save As dialog for assets. [CL 2266822 by Billy Bramer in Main branch]
2014-08-21 20:30:51 -04:00
static UAIPerceptionSystem* GetCurrent(UObject* WorldContextObject);
Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 3271386) #lockdown Nick.Penwarden Change 3270776 on 2017/01/24 by Laurent.Delayen Fixed missing call to CacheBones in AnimNode_SubInstance. Fixes Mudang crash. #c0der3view benn.ghallager, lina.halper #tests does not crash #rb none Change 3270483 on 2017/01/24 by Shaun.Kime Removing the ensure and making it behave safely whenever the scene count is out of sync. Since Paragon isn't using the primary driving feature of MaterialParameterCollections in the UI that required this feature, Nick Darnell and I deemed this okay. #jira OR-34919 #rb nick.darnell #tests PIE and golden path Change 3270067 on 2017/01/24 by Laurent.Delayen Fixed crash when recompiling Mudang's AnimBP. (SubInstances array holding null references) #rb benn.ghallager #tests doesn not crash Change 3269760 on 2017/01/24 by Daniel.Lamb Added more files to inisettings blacklist. #rb Trivial #test cook paragon. Change 3269578 on 2017/01/24 by jason.bestimt #ORION_MAIN - Merge 37.2 @ CL 3269468 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3269570 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) #R0BOMERGE-SAYS: Unresolved conflicts. jason.bestimt, please merge this change by hand. //R0BOMERGE_ORION_Dev_General/OrionGame/Content/Characters/Heroes/Grux/Abilities/Stampede/GA_Grux_Stampede.uasset //R0BOMERGE_ORION_Dev_General/OrionGame/Content/Characters/Heroes/Ice/Icons/Minimap_char_portrait_Ice.uasset //R0BOMERGE_ORION_Dev_General/OrionGame/Content/Characters/Heroes/Ice/Icons/PORT_Ice.uasset #c0der3view: jason.bestimt Change 3269141 on 2017/01/23 by Mieszko.Zielinski TSimpleCellGrid::InvalidCell refactor to avoid it being a static member variable #UE4 #rb Lukasz.Furman #test golden path Change 3268953 on 2017/01/23 by Jason.Bestimt #ORION_DG - R0BOMERGE resolution from MAIN to DG of compile fix and banner stuff #RB:none #Tests:none #c0der3view: matt.schembari, andrew.grant Change 3268576 on 2017/01/23 by John.Pollard Add DemoNetDriver to the level collection earlier to remove small window where World->DemoNetDriver could be null as a result of FScopedLevelCollectionContextSwitch #rb RyanG #tests Live game play + replays + instant replay Change 3268119 on 2017/01/23 by Daniel.Lamb Added support for splitting up chunks into maximum sizes. #rb Andrew.Grant #test Cook paragon ps4 windows windowserver Change 3268020 on 2017/01/23 by Dan.Hertzka Moving TreeFilterHandler.h out into Slate/Public via branch & delete #c0der3view Nick.Darnell #rb none #tests compile Change 3267820 on 2017/01/23 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ CL 3267733 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3267817 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3266798 on 2017/01/20 by Daniel.Lamb Make the diff files commandlet more helpful. #rb Trivial #test Diff files commandlet. Change 3266795 on 2017/01/20 by Daniel.Lamb Fixed issue with Cooked packages trying to load dependencies from a dependency offset which is incorrect. #rb Gil.Gribb #c0der3view Gil.Gribb #test Load cooked packages using the editor. Change 3266310 on 2017/01/20 by Daniel.Lamb Fixed issue with cook ont he fly not resolving string asset reference redirectors on load. Added fastcook to the iterative cook detection. #rb Jamie.Dale #test Cook Paragon Change 3265879 on 2017/01/20 by Jon.Lietz fixing PS4 compile error #rb none #tests compiles #c0der3view andrew.grant Change 3265756 on 2017/01/20 by Jon.Lietz quest evaluator - added in an ability type that will evaluate in game events and increments player stats for quests, these abilities can be granted by quests or the hero data - added support to the ability system to have ability specs not replicated to the client, this will allow for passive only abillities for quest evaluation to only live and exicute on the dedicated server - now support loading in data for quest info asynchronously - orion quests can now grant evaluator abilities to the players that own the quests - AOrionPlayerState_Game::GiveAbilityData() now grabs all the abilities from active quests - at the end of the match unload any data loaded by the quests #RB david.ratti #test granting abilities Change 3265658 on 2017/01/20 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37 @ CL 3265610 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3265627 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3265530 on 2017/01/20 by Robert.Manuszewski Making sure all package dependencies are loaded before post loading its objects #jira OR-34891 #tests Golden path x 12 #rb none Change 3265126 on 2017/01/19 by Frank.Gigliotti Notifies for abilities waiting on input confirmation; * Ability tasks waiting for input confirmation will now notify the ability when it begins and ends waiting. #RB Dave.Ratti #Tests PIE Change 3264489 on 2017/01/19 by Jason.Bestimt #R0BOMERGE-AUTHOR: andrew.grant Merged fix from 36.2. #rb #tests na #R0BOMERGE-SOURCE: CL 3264488 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3263948 on 2017/01/19 by Andrew.Grant Non-unity fixes. #tests compiled WIn64 editor #rb na #R0BOMERGE: Main, 37 Change 3263755 on 2017/01/19 by Laurent.Delayen OR-34970 FRootMotionSource_ConstantForce now has DisablePartialEndTick set, so we end up with a consistent velocity when the root motion ends. Added VelocityOnFinishMode to UAbilityTask_ApplyRootMotionConstantForce so we can optionally override or clamp velocity. CVarDebugRootMotionSources now displays Velocity and LastPreAdditiveVelocity on HUD to help debugging RootMotionSources. #rb frank.gigliotti #tests Ice Q Change 3263616 on 2017/01/19 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37 @ CL 3263608 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3263613 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3262543 on 2017/01/18 by Eric.Newman Added GetAttributeSetValues feature to Ability System. Allows for pulling attribute rows without needing an Actor or AbilitySystemComponent #rb david.ratti #c0der3view david.ratti #tests used to export paragon hero attributes #jira TON-25429 Change 3262414 on 2017/01/18 by Laurent.Delayen Fixed crash opening up Ice's AnimBP. #rb lina.halper #c0der3view thomas.sarkanen #tests opening up AnimBP doesn't crash anymore. Change 3262291 on 2017/01/18 by Ryan.Gerleve Cache the network role of AbilitySystemComponents in PreNetReceive, to make sure the role is correct during serialization if properties are received before BeginPlay. Factor out the caching into its own function to reduce code duplication. #rb david.ratti #tests golden path, bug repro #jira OR-31424 Change 3262062 on 2017/01/18 by Max.Chen Sequencer: Fixed crash caused by lingering persistent evaluation data Copy from Release-4.15 #jira UE-40775 #rb andrew.rodham #tests none Change 3262061 on 2017/01/18 by Max.Chen Sequencer: Evaluation templates are now only fully rebuilt in PIE, and will not re-cycle track identifiers - This addresses issues with newly compiled tracks recycling the persistent data of old stale tracks. - This commit also ensures we don't fully rebuild templates in the editor when in Sequencer Copy from Release-4.15 #jira UE-40775 #rb andrew.rodham #tests none Change 3261946 on 2017/01/18 by Jason.Bestimt #ORION_DG - Fix for event tracks in sequencer #RB:none #Tests:none #R0BOMERGE: MAIN #c0der3view: Max.Chen, andrew.rodham, scott.james Change 3261812 on 2017/01/18 by Mieszko.Zielinski Made bos' perception component vlog information #Orion #rb Lukasz.Furman #test golden path Change 3261731 on 2017/01/18 by Benn.Gallagher Readded fix to clothing index buffer overflow (lost in merge a while back) #tests Editor, assigned clothing to skel mesh #rb Tom.Sarkanen Change 3261730 on 2017/01/18 by Robert.Manuszewski Build script sdk upgrade #rb none #tests Ran the script that was upgraded Change 3261392 on 2017/01/17 by Jason.Bestimt #R0BOMERGE-AUTHOR: andrew.grant non-unity fix #rb none #tests compiled #R0BOMERGE-SOURCE: CL 3261391 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3261096 on 2017/01/17 by Laurent.Delayen OR-33666 Removed 'bImpartsVelocityOnRemoval' for additive root motion sources, as that can create a 'bouncing' effect when Velocity is modified externally. #rb frank.gigliotti #tests Preflight QA test https://jira.it.epicgames.net/browse/PQATC-8713 Change 3261030 on 2017/01/17 by Laurent.Delayen Fix crash in Persona. #rb none #tests doesn't crash Change 3260561 on 2017/01/17 by Jason.Bestimt #R0BOMERGE-AUTHOR: andrew.grant Merging Fix from UE 4.15 Look at the body instance's desired collision enabled value rather than the primitive component's current collision enabled value when determining whether physics state should be created #rb Ori.Cohen #jira UE-39994 #tests na #R0BOMERGE-SOURCE: CL 3260557 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3260553 on 2017/01/17 by Ryan.Gerleve Change cvar in UDemoNetDriver::ShouldSaveCheckpoint to use GetValueOnAnyThread. Fixes OR-34759. #rb john.pollard #tests bug repro, golden path Change 3260202 on 2017/01/17 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37/36.2 @ CL 3260077 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3260201 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3259560 on 2017/01/16 by Marcus.Wassmer Fix reflections #rb none #c0der3view Brian.Karis #tests added some reflections Change 3259348 on 2017/01/16 by Daniel.Lamb Moved automation maps from alwayscookmaps to AllAutomationMaps. #rb Andrew.Grant #test Cook Paragon + Fast Cook Paragon + Preflight Cook Paragon Change 3259113 on 2017/01/16 by Jason.Bestimt #R0BOMERGE-AUTHOR: andrew.grant #ORION_MAIN - Merge 36.2 @ CL 3258788 #RB:none #Tests:compiled Win64 editor #R0BOMERGE-SOURCE: CL 3258986 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3259090 on 2017/01/16 by Chris.Bunner Duplicating CL 3246830: Allow AllocGBuffer call when in simple-forward so dummy uniform buffer creation can occur. #rb None #tests Editor, -game, epic and min settings Change 3258910 on 2017/01/16 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - DAILY DG @ CL 3258854 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3258871 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3258807 on 2017/01/16 by Rolando.Caloca O - Fix for outlines #rb Chris.Bunner #tests Ran sovereign2 game #c0der3view Andrew.Grant Change 3258637 on 2017/01/16 by Charles.Anderson Removing wrongly added files (agrant) Change 3258601 on 2017/01/16 by Andrew.Grant Temp fix for rendering crash by disabling custom depth rendering #rb na #tests PIE'd Change 3258590 on 2017/01/16 by Tom.Wright One of these files are not syncing properly in my UnrealGameSync so I'm adding them manually (the .exe). Change 3258523 on 2017/01/16 by Andrew.Grant Removing intermediate build file that was checked in #rb #tests na Change 3258464 on 2017/01/16 by Andrew.Grant Fixes for non-unity #R0BOMERGE: Main #tests compiled Win64 #rb na Change 3258208 on 2017/01/15 by Mieszko.Zielinski FMetaNavMeshPath's Waypoints have been expanded to store user flags. #UE4 #rb none #test golden path Change 3258042 on 2017/01/14 by andrew.grant Merging test framework changes from //Orion/Release-36.2 to Main (//Orion/Main) #rb #tests preflighted #R0BOMERGE-SOURCE: CL 3258036 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) #R0BOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human. //R0BOMERGE_ORION_Dev_General/OrionGame/Build/OrionBuild.xml #c0der3view: andrew.grant, jason.bestimt Change 3258035 on 2017/01/14 by Andrew.Grant Disable MfMedia plugin by default Change 3257936 on 2017/01/14 by Andrew.Grant Merging from //UE4/Main @ 3253977 through Orion-Staging #rb na #tests QA smoke in staging, built locally, preflighted Change 3257583 on 2017/01/13 by Daniel.Lamb Removed nomcp from the commandline when running on PC #rb Trivial #test Buildcookrun paragon windows Change 3257320 on 2017/01/13 by Cody.Haskell #Orion - Ansel Integration into Replay Mode - Updated Ansel SDK - Bug Fix for Ansel plugin - Made it not look terrible when you pause the game in regular replay mode #rb Andrew #r3view-3256093 @andrew.grant #tests Golden Path, compiles on PS4 #lockdown Andrew.Grant Change 3257239 on 2017/01/13 by Frank.Gigliotti ApplyRootMotionJumpForce end velocity options; * "ApplyRootMotionJumpForce" task now supports setting the end velocity. * Moved root motion end velocity options from the individual tasks into the base class. * Fixed a property on UAbilityTask_ApplyRootMotionConstantForce not replicating properly. #RB None #Tests PIE Change 3256173 on 2017/01/12 by Laurent.Delayen Added additional debug message to ShowResaveMessage. #rb lina.halper #test loaded broken Femme assets. Change 3256082 on 2017/01/12 by Andrew.Grant Temp fix for BuildHealth warning. Following up with BP team #rb none #tests verifierd compile warnings are gone Change 3255991 on 2017/01/12 by Ben.Woodhouse Cherry pick NV gpu hang fix from //ue4/release-4.14 @3238182 Disable timestamp queries on pre-Maxwell nvidia hardware. Local testing suggests that this is the major cause of instability in the UE4.14 release. It's possible that we could be more targeted by only excluding Fermi and older hardware, but identifying fermi hardware by device ID is difficult in practice, since the range overlaps with Kepler. #jira OR-22580 #rb none (r3viewed for 4.14 by Marcus Wassmer) #tests run locally on PC (change is windows-specific) Change 3255185 on 2017/01/12 by John.Nielson Made it so that PS4 compiles without warning from misordered initialization. #RB: r3view #r3view-3255186: Andrew.Grant #Test: None Change 3254885 on 2017/01/11 by Michael.Trepka CIS fix #rb none #tests none Change 3254568 on 2017/01/11 by Andrew.Grant Merging relay fix from //Orion/Release-36.2 to Dev-General (//Orion/Dev-General) #rb #tests na Change 3254544 on 2017/01/11 by Jason.Bestimt #R0BOMERGE-AUTHOR: andrew.grant Robomerging previous fix to Dev-Gen #rb #tests na #R0BOMERGE-SOURCE: CL 3254532 in //Orion/Release-36.1/... via CL 3254537 via CL 3254540 #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3254204 on 2017/01/11 by Michael.Trepka Added title bar area to the game layer manager, so that games can easily setup custom title bar content when using borderless windows. Disabled/hidden by default #rb none #tests Tested in editor build on PC Change 3254074 on 2017/01/11 by Ryan.Gerleve Fix for gameplay tags not being recorded in client replays. #rb david.ratti #tests golden path, replays Change 3254035 on 2017/01/11 by Laurent.Delayen OR-28756 Added WaitForMovementInput Ability Task to use with Emote ability. #rb dave.ratti, frank.gigliotti #tests Kallari's emotes Change 3253736 on 2017/01/11 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 36.2 @ CL 3253668 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3253715 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3252981 on 2017/01/10 by Daniel.Lamb Added async load package delegate. #rb Trivial #test BuildCookRun Paragon with local server Change 3252975 on 2017/01/10 by Daniel.Lamb Added EditorPerProjectUserSettings to the ignore config field for iterative cooking #rb None #test cook paragon. Change 3252784 on 2017/01/10 by Daniel.Lamb Integrated fix for rebuild lighting commandlet from Greg Korman @ Impulse Gear. #rb Daniel.Lamb #test Rebuild lighting Paragon Change 3252460 on 2017/01/10 by Aaron.Eady #jira UE-40390 Fix crash saving blueprint with an inherited DataTable/CurveTable reference. Delta serialization meant that the necessary name wasn't in the name table, so adding it manually now. #rb robert.manuszewski Copied from CL #3252418 Written by Ben.Zeigler #c0der3view Ben.Zeigler, David.Ratti, Andrew.Grant #tests PIE Change 3252222 on 2017/01/10 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 36.2 @ CL 3252019 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3252221 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3251379 on 2017/01/09 by Ori.Cohen Fix build #rb none #tests none Change 3251242 on 2017/01/09 by buildmachine BuildPhysX.Automation: Deploying PhysX & APEX Win64 libs. #rb none #lockdown Nick.Penwarden #tests none Change 3251240 on 2017/01/09 by buildmachine BuildPhysX.Automation: Deploying PhysX & APEX Win32 libs. #rb none #lockdown Nick.Penwarden #tests none Change 3251224 on 2017/01/09 by buildmachine BuildPhysX.Automation: Deploying PhysX & APEX Linux_x86_64-unknown-linux-gnu libs. #rb none #lockdown Nick.Penwarden #tests none Change 3251220 on 2017/01/09 by buildmachine BuildPhysX.Automation: Deploying PhysX & APEX PS4 libs. #rb none #lockdown Nick.Penwarden #tests none Change 3251206 on 2017/01/09 by Ori.Cohen Add logging to possible physx infinite loop. #JIRA OR-32515 #rb Dave.Ratti #tests none Change 3250847 on 2017/01/09 by Daniel.Lamb Added excution time stat to unrealpak. #rb Trivial #test BuildCookRun Paragon with timing info. Change 3250761 on 2017/01/09 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 36.2 @ CL 3250717 #RB: none #Tests:none #R0BOMERGE-SOURCE: CL 3250759 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3249410 on 2017/01/06 by Chris.Bunner Duplicating CL 3249213: Fixed up logic for windowed/fullscreen output display selection when working with HDR. Now selects the most appropriate display if HDR enabled, else current monitor window is on. FullscreenDisplay commandline functions regardless of HDR support. #rb None #tests -game windowed/fullscreen behavior Change 3249285 on 2017/01/06 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 36.2 @ CL 3249117 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3249278 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3247989 on 2017/01/05 by Dan.Hertzka Re-adding the null checks from CL 3247771 in Release-36 (the R0BOMERGEd submit didn't include these for some reason) #c0der3view Andrew.Grant #rb none #tests Compiled and didn't crash on editor startup #R0BOMERGE: Main Change 3247790 on 2017/01/05 by Jason.Bestimt #R0BOMERGE-AUTHOR: andrew.grant Robomerging! #tests #rb na #R0BOMERGE-SOURCE: CL 3247786 in //Orion/Release-36/... via CL 3247787 via CL 3247788 via CL 3247789 #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3247717 on 2017/01/05 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 36.2 @ CL 3247673 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3247716 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3247575 on 2017/01/05 by David.Ratti -Fix crash if GE has a null linked target GE -Change FGameplayEFfectContext::Ability to be AbilityCDO via TWeakObjectPtr rather than a TSubclass. TSubclass is not weak, so if a class was GC'd while still in a GEEC somewhere, it could crash. #rb none #tests pie Change 3247032 on 2017/01/04 by Ori.Cohen Touch engine file to re-link physx libs #JIRA OR-32839 #rb none #tests none Change 3247006 on 2017/01/04 by buildmachine BuildPhysX.Automation: Deploying PhysX & APEX PS4 libs. #rb none #lockdown Nick.Penwarden #tests none Change 3246987 on 2017/01/04 by Ori.Cohen Add newline for ps4 #rb none #tests none Change 3246986 on 2017/01/04 by buildmachine BuildPhysX.Automation: Deploying PhysX & APEX Win64 libs. #rb none #lockdown Nick.Penwarden #tests none Change 3246981 on 2017/01/04 by buildmachine BuildPhysX.Automation: Deploying PhysX & APEX Linux_x86_64-unknown-linux-gnu libs. #rb none #lockdown Nick.Penwarden #tests none Change 3246969 on 2017/01/04 by buildmachine BuildPhysX.Automation: Deploying PhysX & APEX Win32 libs. #rb none #lockdown Nick.Penwarden #tests none Change 3246921 on 2017/01/04 by Ori.Cohen Fix automation to include #tests none #rb none #tests none Change 3246900 on 2017/01/04 by Ori.Cohen Fix newline issues for ps4. #rb none #tests none Change 3246666 on 2017/01/04 by Chad.Garyet Updating physx build to include switch and linux-arm64 integrate/resolve from dev-physics-upgrade #c0der3view ori.cohen Change 3246450 on 2017/01/04 by Arciel.Rekman Fix for sweeps taking too long time (OR-32839). - Exhaustive investigation uncovered apparent numerical problems in this code (when compiling with clang 3.9.x with -ffast-math). - Current solution can result in overshoot for certain trace extents, but they are not expected to be a practical problem in Unreal. - NVidia is aware and will investigate a better solution. #rb Ori.Cohen #c0der3view Ori.Cohen #tests Compiled Linux server with the changed PhysX and continuously ran bot matches for about a day. Change 3246229 on 2017/01/04 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 36.2 @ CL 3246134 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3246204 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3245068 on 2017/01/03 by Lukasz.Furman improving obstacle grid avoidance: adjusting start location when inside obstacle, fixes for string pulling #jira OR-33318 #rb none #c0der3view Mieszko.Zielinski #tests PIE Change 3244698 on 2017/01/03 by Lukasz.Furman compilation fix: removed optimization pragmas from AISense_Sight.cpp #rb none #tests none Change 3244679 on 2017/01/03 by David.Ratti Unify linked gameplay effect spec creation: -Linked GEs -Conditional Execution GEs -Overflow GEs -Expiration GEs (premature/routine) These now create the dependant GE Spec the same way, by duplicating the original context and copying spec tags, MINUS the original GE's asset tags. Actor tags are still recaptured at the moment the spec is created. #rb Lietz #tests golden path #c0der3view Billy.Bramer, Fred.Kimberley Change 3244499 on 2017/01/02 by Mieszko.Zielinski Major AI tactics upgrade #Orion Introduction of new objective dealing algorithm (CSP inspired) Bots can now place wards Bots can now destroy wards and other appopriately marked up OrionDamagableActors (content change in following CL, allows bots to see these actors) Switched OrionAIBot.CurrentEnemy to AActor type Removed code related to Jungle Rig objectives #rb none #test golden path Change 3242918 on 2016/12/22 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 36.2 @ CL 3242890 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3242917 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3241817 on 2016/12/21 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 36.2 @ CL 3241745 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3241811 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3240916 on 2016/12/20 by Ben.Marsh Add metadata properties to jobs that create promotable artifacts and execute promotions, for consumption by the pipeline tool. Properties are added to /job[XXX]/Pipeline/Promotable-<Platform>-<Type> or /Promotion-<Platform>-<Type>. #rb none #c0der3view David.Vossel, Trevor.Pounds #tests Ran through preflight Change 3240857 on 2016/12/20 by Lina.Halper Added ensure to track marker sync crash #rb: Laurent.Delayen #code r3view: Martin.Wilson #tests: PIE with mudangs Change 3240856 on 2016/12/20 by Laurent.Delayen Potential fix for sync marker crash. #rb lina.halper #c0der3view martin.wilson, lina.halper #tests Mudang Change 3240813 on 2016/12/20 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 36.2 @ CL 3240768 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3240812 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3239624 on 2016/12/19 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 36.2 @ CL 3239590 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3239623 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3238573 on 2016/12/16 by Andrew.Grant Moved console vars to source file to avoid multiple definitions (OR-33470) #rb none #tests compiled Change 3238077 on 2016/12/16 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 36 @ CL 3238017 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3238059 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3237176 on 2016/12/15 by Laurent.Delayen Moved FloatRK4SpringInterpolator and VectorRK4Interpolator from Orion to Engine. #rb ori.cohen #c0der3view lina.halper, james.golding #tests Twinblast and Ice Change 3236911 on 2016/12/15 by Lukasz.Furman changed navgrid projection to use 2D poly search for more accurate results #orion #rb none #tests PIE Change 3236660 on 2016/12/15 by Jamie.Dale Updating Orion text block to upper-case its text in a localized way This also prevents it clobbering the text property value with the transformed text, resulting in key stability issues. #jira OR-32716 #rb Dan.Hertzka #tests Ran Orion and verified that the "all caps" text was correct, and responded to live-culture changes #R0BOMERGE: Main, Release-36 Change 3236658 on 2016/12/15 by Jamie.Dale Adding FText::ToLower and FText::ToUpper These also track history and rebuild when the text they were generated from is changed. #jira OR-32716 #rb Dan.Hertzka #tests Ran Orion and verified that the "all caps" text was correct, and responded to live-culture changes #R0BOMERGE: Main, Release-36 Change 3236501 on 2016/12/15 by Lukasz.Furman enabled navigation grid avoidance for jungle minions #jira OR-33318 #rb Mieszko.Zielinski #tests PIE Change 3236479 on 2016/12/15 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 36 @ CL 3236423 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3236474 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3236399 on 2016/12/15 by Andrew.Grant Fixed pkg warning "Patch created by newer SDK must contain sce_module files" by not excluding "libSceNpToolkit.prx" #rb none #tests none #R0BOMERGE: Main,36 Change 3236280 on 2016/12/15 by Benn.Gallagher Fixed crash when clothing cooked data is updated on a client that is not powerful enough to run multithreaded physics (2 or fewer cores) #rb Ori.Cohen #jira OR-33248 #tests - Editor + PIE, running through multiple character viewer screens in menu (as per repro), forced single threaded physics and re-ran tests Change 3235666 on 2016/12/14 by Matt.Schembari Merging 3200968 from Dev-Editor for OR-32947. #c0der3view Andrew.Grant,Arthur.Flew #tests compile ------- Fixed localization gather including texts that were instanced or otherwise unchanged - It now uses the archetype when exporting to diff against the default property value, and will only gather text that has changed from the default. - UMG widgets that are instanced from another UMG asset now only gather overridden values, and skip all child instances. #rb Nick.Darnell --------- Change 3235315 on 2016/12/14 by Adric.Worley Fix FText parse warning spam when dragging in world outliner #jira UE-29099 #tests editor #rb Matt.Kuhlenschmidt Change 3235177 on 2016/12/14 by Sam.Zamani Chat toxicity info added to every out-going party/team chat message Added optional "chat-info" XML element to XMPP chat stanzas being sent to a MUC room The chat info is added to the room's configuration via ChatInterface OSS Currently capturing playlist id, team size, and party size with each chat message OGS-479 Add extra attributes to XMPP chat messages for toxicity processing #rb: josh.markiewicz, rob.cannaday #coderview: ian.fox #tests: none Change 3235093 on 2016/12/14 by Arciel.Rekman Linux: switched PhysX/APEX debug info to DWARF3 and rebuilt the libs - Also fixed an unrelated compile error (by suppressing the warning - do not merge back to main). #rb Ori.Cohen, Andrew.Grant #c0der3view Ori.Cohen, Andrew.Grant #tests Compiled the server Change 3234913 on 2016/12/14 by Andrew.Grant Duplicated 3200382 from Dev-Core as suspected fix for OR-33328 #rb #tests na Change 3234910 on 2016/12/14 by Laurent.Delayen Added AnimNotifyState_DisableRootMotion to turn off root motion during a RootMotion Montage, and give control back to the player. #rb martin.wilson #tests Ice RootMotion Ult networked. Change 3234823 on 2016/12/14 by Lukasz.Furman added capsule support for local navigation grids #orion #rb none #tests PIE Change 3234768 on 2016/12/14 by Lukasz.Furman fixed crash in registering debug scene proxies of gameplay debugger tool #orion #rb none #tests PIE Change 3234682 on 2016/12/14 by Chad.Garyet Adding physx build to dev-general Change 3234643 on 2016/12/14 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 35.2/36 @ CL 3234401 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3234640 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3234597 on 2016/12/14 by Wes.Hunt Merging RealMoneyPurchaseComplete delegate from CatalogHelper into Orion * Hooked it up so CatalogHelper doesn't take a persistent reference to the analytics provider. Extensive refactor of Orion's AnalyticsProvider lifetime and management. * More tightly controlled provider lifetime, eliminated need to recreate the providers unnecessarily. * Made provider access functions simpler and clarified creation vs. access (no more lazy getters). * Improved handling of GameSessionIDs and UserIDs outside of match to improve data clarity for the analytics backend. Details: AnalyticsProviderET * Added Get/SetAppID APIs to allow the AppID to change without recreating the provider (needed for CompQA support, which isn't always known when the provider is created). * SetAppID and SetSessionID now flush their cached events before changing them. * SetUserID still does not Flush because we inadvertently rely on this so the UserID can be set several frames later and all events will be sent with a valid UserID. OrionAnalytics * Simplified contract for correctly creating a new provider: CreateAnalyticsProvider now takes an AccountID and GameSessionID so the provider can be fully initialized with a single call. * Exposed CreateAppID function so the places where the AppID needed to dynamically change (CompQA purposes) could use shared Orion naming conventions. * Exposed SetDefaultAttributes function so game code could share the logic for setting default attributes. * Add assert to CreateAnalyticsProvider because we never expect it to fail, and outside code doesn't have to do it. DemoNetDriver * Exposed UDemoNetDriver::GetDemoSessionID to allow analytics to set a consistent GameSessionID during replay that is NOT the game session ID of the original match, which was throwing heartbeat events for replays into the same session on the backend, if the replay was watched fast enough. OrionGameInstance * Server's analytics provider moved to GameInstance as it's lifetime is more appropriate than the GameMode. * SetUserID now works in PIE, and sets it to PIE_INSTANCE so we don't pollute our account data with random GUIDs GameInstanceCommon * When playing back a replay, use the DemoNetDriver's SessionID instead of the Game Session ID of the game being replayed. OrionGameMode_MOBA * Moved Login functionality to GameMode_Base so it will work properly in all Orion GameModes (ie, DraftLobby). OrionGameMode_Base * Removed SetAnalyticsProvider. This was confusing the interface and making it seem like providers could change dynamically (they couldn't). * GetAnalyticsProvider changed to just get it from the GameInstance where it is really stored now. OrionPlayerController_Base * Removed SetAnalyticsProvider. No external code should be changing the provider. * Exposed an explicit CreateAnalyticsProvider so GetAnalyticsProvider() no longer has to lazily create the provider. * Added some asserts on preconditions to CreateAnalyticsProvider to ensure we are not creating them at the wrong times. OrionGameSession * The Server Analytics provider now sets a UserID that is a combination of the machine name, PID, and a GUID unqiue to that run. This makes server analytics easier to trace back to servers. OrionGameState_Base * CreateGameSessionID renamed to StoreGameSessionID to better reflect that it isn't creating anything. * Remove the code that sets a random GUID for non game modes, which was just confusing the session handling code on the analytics backend. * Ensure that demo playback sets the demo session ID and not the replayed game's session ID. OrionGameStateMain * GameSessionID is always set to the empty string for non game modes. McpContext * InitAnalytics no longer needs to create the analytics provider or restart any session, etc. It just sets the new AppID (if we now know we are CompQA) and the UserID (since we just logged in). #c0der3view:john.pollard,ryan.gerleve,josh.markiewicz #rb josh.markiewicz #tests extensive runs of the game, dedicated server, menu, and match traveral, and replay watching. Also editor, PIE standalone, PIE w/ dedicated server, and nomcp configurations to ensure no crashes and the providers are created as expected, not recreated, and get the proper Session and GameSessionIDs at the expected times. #R0BOMERGE-AUTHOR: david.nikdel #CatalogHelper #Analytics: - Added a RealMoneyPurchaseComplete multicast delegate to CatalogHelper mostly intended for apps to be able to listen for this event (not as a completion delegate) and do their own analytics events. - Rolled up a bunch of the params into a struct for forward compatibility - Moved the ECom.ClientInAppPurchase code into a helper on the struct (would like to get this out of catalog helper now that the delegate is there) [c0der3viewed]: Ian.Fox, Wes.Hunt #R0BOMERGE-SOURCE: CL 3209122 in //WEX/Release-05/... via CL 3209123 #R0BOMERGE-BOT: OGS (BattleBreakers -> Main) #AUTOMERGE using branch ROBO://GamePlugins/Main->//Orion/Dev-General of change#3209125 by Jason.Bestimt on 2016/11/23 12:33:06. #R0BOMERGE-AUTHOR: david.nikdel Why does the compiler think a parameter can "hide" a non-static member from an outer class. That is most definitely not in scope... #R0BOMERGE-SOURCE: CL 3209212 in //WEX/Release-05/... via CL 3209213 #R0BOMERGE-BOT: OGS (BattleBreakers -> Main) #AUTOMERGE using branch ROBO://GamePlugins/Main->//Orion/Dev-General of change#3209214 by Jason.Bestimt on 2016/11/23 14:00:12. #R0BOMERGE-AUTHOR: david.nikdel #CatalogHelper: Change to AnalyticsProvider to shared reference [c0der3viewed]: Ian.Fox #R0BOMERGE-SOURCE: CL 3209222 in //WEX/Release-05/... via CL 3209223 #R0BOMERGE-BOT: OGS (BattleBreakers -> Main) #AUTOMERGE using branch ROBO://GamePlugins/Main->//Orion/Dev-General of change#3209225 by Jason.Bestimt on 2016/11/23 14:07:47. #R0BOMERGE-AUTHOR: wes.hunt Ensure that Heartbeat events will not clog the retry queue if the data router cannot be reached. * Renamed to Usage.Heartbeat and Context to match the more "non-gamey" naming we want to move to (also can't have WorldExplorers prefix). * Removed the Analytics provider from McpCatalogHelper and use the callback delegate instead. This removes analytics assumptions from the McpCatalog code and allows the analytics provider references to not leak outside of WExpAnalytics. This allows us to put ensures in the shutdown code to make sure it doesn't leak and sessions are closed when we expect. Also cleaned up some code that tried to work around the fact that outside code held onto a reference when trying to end the session. [c0der3viewed]:david.nikdel #jira wex-4038 #R0BOMERGE-SOURCE: CL 3209575 in //WEX/Main/WEX/Plugins/... #R0BOMERGE-BOT: OGS (BattleBreakers -> Main) #AUTOMERGE using branch ROBO://GamePlugins/Main->//Orion/Dev-General of change#3209653 by Jason.Bestimt on 2016/11/24 01:43:48. Change 3233911 on 2016/12/13 by Andrew.Grant Duplicating 3203865 from //UE4/Dev-Sequencer/... #tests #rb na Change 3233789 on 2016/12/13 by Olaf.Piesche Replicating 3233289 from Dev-Rendering - light component distance fade properties not initialized #c0der3view marcus.wassmer #rb marcus.wassmer #tests build Change 3233016 on 2016/12/13 by Ryan.Gerleve Fix for conditional properties being evaluated incorrectly when recording replay checkpoints. Fixes heroes appearing as grey boxes in deathcam and replays. #jira OR-32926 #tests golden path, deathcam, replays #rb john.pollard Change 3232909 on 2016/12/13 by Laurent.Delayen Renamed USkeletalMeshComponent::IsPlayingRootMotion() to ::IsPlayingNetworkedRootMotionMontage() to better match what the function does, and match definitions in ACharacter. (Also checks for RootMotionMode to be FromMontageOnly). Added proper IsPlayingRootMotion() to match ACharacter. Also constified these functions. #rb Martin.Wilson #tests Ice Root Motion ult Change 3232336 on 2016/12/13 by David.Ratti Spot merge async loading fix #rb Gil #tests cooked build front end store Change 3231733 on 2016/12/12 by Andrew.Grant Added code to dump out deferred engine commands when frametime is above desired #rb Michael.Noland #tests compiled, ran server #R0BOMERGE: Main Change 3231406 on 2016/12/12 by Laurent.Delayen CharacterMovementComponent: allow physics rotation to be performed during AnimRootMotion. #rb none #tests Ice Change 3230272 on 2016/12/10 by Andrew.Grant Fix for automation code being dead-stripped #rb none #tests verified automation works Change 3229976 on 2016/12/09 by Ryan.Gerleve Fix multiple UI/HUD issues during deathcam playback: No longer switch the local player's PlayerController during deathcam playback. The game player controller will now set it viewtarget to the hero in the deathcam replay. Add an option for the recording DemoNetDriver to not spawn a spectator controller at all. Clean up some hacks that were needed when the player controller did switch to make the card shop close properly. Remove other code that was related to the player controller switch. Add a deathcam camera component to hero characters and activate it during deathcam playback. Factor out the code common to the spectator chase camera and the deathcam camera into a helper struct that both camera components use. Client notifies the server when it starts and stops deathcam, so the server knows not to update the client's viewtarget for the duration. #jira OR-32433, OR-32568, OR-31299, OR-31197 #rb john.pollard, jon.lietz #tests golden path, deathcam, replays Change 3229790 on 2016/12/09 by Lina.Halper #DUPEFIX of CL 3219688 Merging using //Orion/Dev-General_to_//UE4/Dev-Framework Expected fix for cooking issue of animation #rb: Martin.Wilson #code r3view: Martin.Wilson, Laurent.Delayen #tests: none Change 3228731 on 2016/12/09 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 35.2 @ CL 3228573 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3228715 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3228602 on 2016/12/09 by Benn.Gallagher Added temporary CVar to fix broken clothing imports due to errant transposition of bone bind matrices on apx file import. This should not be integrated to main - hoping on a fix soon from Nvidia for this issue to be fully solved, this just gets our content creators back up and running while Nvidia investigates #tests Win64 Editor, importing clothing files for Twinblast and Fallen Angel #rb Lina.Halper Change 3227456 on 2016/12/08 by Andrew.Grant Stopped _BUiltData from being dirtied by autosave (copied from 3223169 in Dev-Editor) #rb #tests na Change 3227417 on 2016/12/08 by David.Ratti Fix category on gameplay tag settings #rb none #tests none Change 3227401 on 2016/12/08 by David.Ratti GameplayTag category restrictions remapping support. This allows engine properties to specify categories that can be specified/expanded by projects. Added categories for gameplayeffect tags #rb BenZ #tests editor, golden path #c0der3view Billy.Bramer, Fred.Kimberly Change 3227368 on 2016/12/08 by Uriel.Doyon Simple forward shading now disables self shadowed translucency (because it samples an invalid volumetric light buffer). #jira OR-32645 #tests Loaded editor, tested in game at different quality settings #rb daniel.wright Change 3227243 on 2016/12/08 by David.Ratti Spot integrate CL 3225990 to fix tag sorting #rb none #tests compile Change 3227029 on 2016/12/08 by Laurent.Delayen Fixed crash when creating a new Montage from scratch. #rb Lina.Halper #tests no more crashing when creating a montage from scratch Change 3226877 on 2016/12/08 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 35.2 @ CL 3226846 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3226876 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3226157 on 2016/12/07 by Aaron.McLeran Implementing UE-39421 fix into Orion-DevGeneral2 #rb none #tests Be able to view sound class graphs without destroying links. Change 3225422 on 2016/12/07 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - PhysX libs null merge from 35.2 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3225413 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3224772 on 2016/12/07 by David.Ratti Fix for Rentry in gameplaycue GetWorld functions #rb none #tests golden path Change 3224771 on 2016/12/07 by David.Ratti Reset RemoetInstanceHasended in UGameplayAbility::PreActivate #rb none #tests pie Change 3224752 on 2016/12/07 by Ben.Marsh Merge CL 3224750 from //UE4/Main: Removing -forcelogflush parameter from UAT invocations of the editor to improve cook times. #rb none #tests preflight Change 3224691 on 2016/12/07 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 35.2 @ CL 3224223 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3224690 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3224166 on 2016/12/06 by Daniel.Lamb Reenabled iterative cooking inisettings saving. #rb Trivial #test Cook paragon Change 3223965 on 2016/12/06 by Uriel.Doyon Building texture streaming data for materials does not wait for pending shaders to finish compilation anymore. Added more options to allow the user to cancel this build also. #rb daniel.wright #tests modified different shaders in the material editor and also in the material instance editor Change 3223953 on 2016/12/06 by Frank.Gigliotti Root motion time stamp reset; * The character movement time stamp is now decremented by MinTimeBetweenTimeStampResets instead of being reset to 0. * The character movement time stamp reset is now applied to the start times on root motions. This fixes root motions being stuck on since the time stamp could potentially never reach the start time. * Changed how root motion detects invalid start times since a negative start time is now valid. #RB zak.middleton, laurent.delayen #c0der3view zak.middleton, laurent.delayen #Tests PIE Change 3223463 on 2016/12/06 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 35.2 @ CL 3223380 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3223458 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3223219 on 2016/12/06 by Daniel.Lamb Added more stats to saving asset registry code. #rb None #test cook Change 3222459 on 2016/12/05 by Uriel.Doyon "Texture Streaming Build" now updates the map check after execution. Removed texture streaming data for primitives hidden in game. Fixed an issue where build all would not rebuild texture streaming data. #rb none #jira OR-32771 #tests rebuilt texture streaming data in different maps Change 3222246 on 2016/12/05 by Jason.Bestimt #R0BOMERGE-AUTHOR: andrew.grant Suppress warning when converting from int when the dest is floating point and the converted values are the same #rb none #tests verified converting -1 to -1.000 no longer results in a warning #R0BOMERGE-SOURCE: CL 3222245 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3221951 on 2016/12/05 by Daniel.Lamb More stats into saving asset registry. #rb None #test cook paragon Change 3221518 on 2016/12/05 by Daniel.Lamb Added some more ini settings parsing stats. Removed SaveCurrentIniSettings when not using iterative builds as it is slow will reenable when it's fast again. #rb None #test Cook paragon Change 3221475 on 2016/12/05 by Jason.Bestimt #R0BOMERGE-AUTHOR: andrew.grant Fix for atrac9 logging issue on PS4 #rb none #tests compiled PS4 client in unity #R0BOMERGE-SOURCE: CL 3221474 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3221403 on 2016/12/05 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 35.2 @ CL 3221235 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3221399 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3221247 on 2016/12/05 by Jason.Bestimt #R0BOMERGE-AUTHOR: andrew.grant Third-try at fixing non-unity compile issue #rb none #tests compiled PS4 client #R0BOMERGE-SOURCE: CL 3221242 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3219738 on 2016/12/02 by Daniel.Lamb Integrate Dev-Platform -> Dev-General Added support to rebuild lightmaps commandlet for building lightmaps in seperate files. #rb Daniel.Wright #test rebuild lighting Custom QAGame maps. #jira OR-31907 Change 3219133 on 2016/12/02 by Jason.Bestimt #R0BOMERGE-AUTHOR: guillaume.abadie Cherry picks Dev-Rendering's 3209305: Fix contact shadow's assemption on objects thickness #rb None #R0BOMERGE-SOURCE: CL 3219131 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3219081 on 2016/12/02 by Andrew.Grant Merging material fixes in 3208490 from //UE4/Dev-Rendering/... to //Orion/Dev-General/... #rb none #tests compiled WIn64 editor Change 3218980 on 2016/12/02 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 35.2 @ CL 3218942 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3218979 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3218970 on 2016/12/02 by Andrew.Grant Second attempt at unity / non-unity fix #rb none #tests compiled PS4 Client Change 3218807 on 2016/12/02 by Andrew.Grant Fix for non-unity issue #rb none #tests compiled Win64 editor Change 3218472 on 2016/12/01 by Andrew.Grant Temp fix to allow checked-out blueprint to compile #rb none #tests none Change 3218417 on 2016/12/01 by Andrew.Grant Merging //UE4/Main @ 3205566 through //UE4/Orion-Stating #rb #tests na Change 3218140 on 2016/12/01 by Arciel.Rekman Linux: report server hangs by crashing the hung thread (UE-39164). #rb Michael.Trepka #c0der3view Bart.Hawthorne, Andrew.Grant. #tests none in this branch (Merging 3218133 from Dev-Platform to to //Orion/Dev-General) Change 3216959 on 2016/12/01 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 35.2 @ CL 3216930 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3216954 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3216341 on 2016/11/30 by Michael.Noland Engine: Reduced the length of the hitch when turning off ToggleDebugCamera while showdebug was active by removing expired strings from the back of the array instead of the front (the underlying issue of strings accumulating while not being displayed / processed is covered by UE-39226) #rb marc.audy #tests showdebug significancemanager + toggledebugcamera + wait 30 s + toggledebugcamera Change 3216233 on 2016/11/30 by Andrew.Grant Generate symbols for PS4 as a post-build UBT step At runtime do a better job of searching paths for symbols #rb Marcus.Wassmer #tests verified symbols are generated and valid Change 3215522 on 2016/11/30 by David.Ratti Fixes from Simon for particle significance overriding explicit call to SetEmitterEnabled by game code. #rb none #tests pie #c0der3view Simon.Tovey Change 3215444 on 2016/11/30 by Aaron.McLeran OR-19392 (and now) OR-32017 Reintroducing CL 2943174 after it was lost due to integration issues! #rb none #tests none Change 3215110 on 2016/11/30 by jason.bestimt #ORION_MAIN - Merge 35.2 @ CL 3215050 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3215097 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) #R0BOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human. //R0BOMERGE_ORION_Dev_General/OrionGame/Content/Characters/Heroes/Rampage/Skins/Rampage_v001_IceBlue/M_RampageV001_MASTER.uasset #c0der3view: jason.bestimt Change 3213268 on 2016/11/29 by jason.bestimt #ORION_MAIN - Merge 35.2 @ CL 3213062 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3213118 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) #R0BOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human. //R0BOMERGE_ORION_Dev_General/OrionGame/Source/BlueprintContext/Private/BannerContext.cpp #c0der3view: jason.bestimt Change 3212226 on 2016/11/28 by Aaron.McLeran OR-32363 Client ensure with USoundWave::GetResourceSize() v35 DevGen Ensure is not valid since it's possible for the sound wave to have its resource size queried before its finished decoded in the case of precache on load. Rather than report ResourceSize (the compressed asset size), we're going to just report the fully decompressed data size (RawPCMDataSize) since that's what it will be when it finishes decoding. #tests none #rb zak.middleton Change 3208273 on 2016/11/22 by Tim.Elek Fix for Tonemapping sharpen black border for HDR #rb marc.olano #c0der3view marcus.wassmer, jordan.walker, andrew.grant Change 3207881 on 2016/11/22 by Jason.Bestimt #R0BOMERGE-AUTHOR: andrew.grant If a requested package can't be found and async loading is not an option, load the object instead of hoping that FlushAsyncLoading() will make things right... This flaw was spotted while investigating OR-31699 which was due to a different issue, but should have been handled by this codepath. #rb none #tests Faked a condition where a package wasn't loaded on the client but became referenced by a object from the server [c0der3viewed] Ben.Ziegler #R0BOMERGE-SOURCE: CL 3207880 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3207807 on 2016/11/22 by Jason.Bestimt #R0BOMERGE-AUTHOR: andrew.grant Fix for OR-31699 While preloading packages check that a package has actually been loaded. Previously this could result in a package failing to load because FindObjectFast would return it to itself (!) #rb none [c0der3viewed] Michael.Noland #tests verified can load into Monolith and get the shadow buff #R0BOMERGE-SOURCE: CL 3207806 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3207756 on 2016/11/22 by David.Ratti rollback networking changes since they seem to be causing side effects and v35 isnt the version to take chances on #rb none #tests compile Change 3206348 on 2016/11/21 by Dan.Hertzka Re-added lost type checking changes to the widget BP compiler when evaluating whether to bind a widget Also added the type check when renaming a widget - if the property name is taken by a BindWidget property, but the widget isn't of a valid type, the rename now fails #c0der3view Nick.Darnell #rb Nick.Darnell #tests Widget BP binding Change 3205882 on 2016/11/21 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 34.3 @ CL 3205612 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3205880 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3205802 on 2016/11/21 by Daniel.Lamb Fixed commandlet used for diffing cooked packages and generating serialization callstacks. #rb None #test Diff cooked package commandlet Change 3204959 on 2016/11/18 by Ryan.Gerleve World time is no longer adjusted when scrubbing in replays. Fixes several issues related to deathcam. Originally done to to fix ability cooldowns in replays, but shouldn't be necessary. #rb john.pollard #jira OR-30918, OR-31268, OR-31302 #tests golden path, deathcam, replays Change 3204805 on 2016/11/18 by Frank.Gigliotti Don't clamp root motion finish velocity if it doesn't need it. #RB None #Tests PIE Change 3204327 on 2016/11/18 by Mieszko.Zielinski Extended UBTDecorator_IsAtLocation with an option of using regular geometric distances rather than pathfollowing-based test #UE4 #rb Lukasz.Furman #test golden path Change 3204078 on 2016/11/18 by Ryan.Gerleve Flip incorrect sort when there are multiple viewpoints in the significance manager (duplicate of CL 3203997 from Dev-Framework). Fixes objects having incorrect significance in deathcam playback. #rb marc.audy #tests golden path, deathcam Change 3204041 on 2016/11/18 by John.Pollard Fix issue where old player controller from draft lobby was hanging around, causing replication warnings #rb BartH #tests Replays Change 3203971 on 2016/11/18 by John.Pollard Fix assert that can occur in player controller iterator when last element cast's to nullptr #rb BartH #tests Live + replays Change 3203843 on 2016/11/18 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 34.3 @ CL 3203682 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3203842 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3202948 on 2016/11/17 by Daniel.Lamb Disabled warning about invalidating cook due to unparsable ini setting. This occurs when you don't have any previously cooked content (like on build machine). #jira OR-31916 #rb trivial #test cook paragon Change 3202798 on 2016/11/17 by David.Ratti Fix logic error around bSuppressGameplayCues #rb none #tests compile Change 3202761 on 2016/11/17 by Jason.Bestimt #R0BOMERGE-AUTHOR: david.ratti Use FObjectKey instead of UClass* for function acceleration map. Speculative fix for rare client crash. #rb none #test pie #R0BOMERGE-SOURCE: CL 3202552 in //Orion/Release-34.3/... via CL 3202760 #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3202688 on 2016/11/17 by Michael.Noland Engine: Adding stats to performance assassians GetAllActorsWithInterface and GetAllActorsWithTag to make them clearer in dumphitches reports (also in GetAllActorsOfClass, which is usually fine unless used with something really broad like AActor or AStaticMeshActor) #rb none #tests Compiled and ran on PS4 Change 3202687 on 2016/11/17 by Michael.Noland Engine: Changed console variables and commands to allow using ? immediately following the command (without a space) to bring up the help text, in addition to the existing behavior of using ? as the first parameter #tests Tested with/without spaces on both a console variable and a console command #rb nick.darnell Change 3202686 on 2016/11/17 by Michael.Noland Engine: Made help console command open the generated HTML file via LaunchURL on windows #tests Tested help command on Windows (LaunchURL with file:// use is only enabled for Windows now, but will be tested on Mac and possibly enabled later) #rb nick.darnell Change 3202622 on 2016/11/17 by Ryan.Gerleve Support duplication of UReflectionCaptureComponents that were loaded from cooked data. Needed to support deathcam in Monolith. #rb daniel.wright #tests golden path on monolith with deathcam enabled on PS4 Change 3202575 on 2016/11/17 by Dan.Hertzka Blur widget updates - Renamed to SBackgroundBlur/UBackgroundBlur - Split SBackgroundBlur out into its own file - Added bApplyAlphaToBlur - when true, the strength of the blur is modulated by the widget alpha - Updated BlurRadius to be TOptional, so we auto-calculate radius when it isn't set - Added a UBackgroundBlurSlot, but left it unattached so it can be done in dev-editor (and update based on the engine version) - Updated OrionBlurWidget to export dll symbols and set up default low quality fallback image #c0der3view Matt.Kuhlenschmidt #rb none #tests PIE & widget designer Change 3202533 on 2016/11/17 by Mieszko.Zielinski Fixed new toggleable nav links not working in client-server environment #Orion #rb none #test golden path Change 3202456 on 2016/11/17 by Mieszko.Zielinski Introduced a new constant to Recast soruces to be used as initial value of tile salt variables #UE4 #rb none #test golden path Change 3202414 on 2016/11/17 by Chris.Bunner Clamp eye adapation working area to match scene viewrect. #rb Marcus.Wassmer #tests Editor #jira OR-31821 Change 3202205 on 2016/11/17 by David.Ratti Networking fix: -Fix ensure about Delayed Prediction Key being flushed while invalid -Fix issue where predicted GE would be removed due to prediction key catch up, but would be added to the removed predicted GE list, causing the later replicated GE to be ignored incorrrectly. This can cause cooldowns to not appear on client, making abilities appear to not function. #rb none #tests golden path, latency #c0der3view Frank.Gigliotti Change 3202063 on 2016/11/17 by Jason.Bestimt #R0BOMERGE-AUTHOR: nicholas.davies #jira OR-31641 Chat logs overlap text box when pressing enter Jamie Dale fix for adjusting text spacing when lines are removed from TextLayouts [c0der3viewed] Jamie.Dale #RB Jamie.Dale #TESTS Chat should no longer overlap when more than 40 messages have been added #R0BOMERGE-SOURCE: CL 3202062 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3201964 on 2016/11/17 by Jason.Bestimt #R0BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 34.3 @ CL 3201880 #RB:none #Tests:none #R0BOMERGE-SOURCE: CL 3201956 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3201426 on 2016/11/16 by Mieszko.Zielinski Implemented a generic way to set up simple point navigation links that could be disabled at runtime on static navmesh #Orion #rb none #test golden path Change 3201174 on 2016/11/16 by John.Pollard Increase number of retries when refreshing viewer fails + refactor so that a refresh doesn't starve other REST calls #rb BartH #tests Replays Change 3200669 on 2016/11/16 by Jason.Bestimt #R0BOMERGE-AUTHOR: andrew.grant Merging test framework changes from Release-34 to resolve some known conflicts #rb #tests na #R0BOMERGE-SOURCE: CL 3200668 in //Orion/Main/... #R0BOMERGE-BOT: ORION (Main -> Dev-General) Change 3199192 on 2016/11/15 by Lina.Halper Extra ensure for the crash with OR-31795 #jira: OR-31795 #rb: Laurent.Delayen #tests: cooked, and test AI_Test with 9 bots Change 3199187 on 2016/11/15 by Aaron.McLeran UE-35533 Implementing from CL 3112097 Dev-Framework for joey #tests Perform tests described in JIRA #rb Jeff.Campeau Change 3199094 on 2016/11/15 by Eric.Newman Only ping Slate last interaction time for analog input outside the deadzone Orion now only reports handled for analog movements outside the deadzone #c0der3view matt.kulhenschmidt,chris.gagnon #rb cody.haskell #tests golden path w/ ps4 controller on PC Change 3199085 on 2016/11/15 by Laurent.Delayen Potential fix for https://jira.it.epicgames.net/browse/OR-31795 #rb lina.halper #tests twinblast ult multiPIE Change 3198934 on 2016/11/15 by Frank.Gigliotti Fixed out of sync root motion ability tasks; * Root motion ability tasks were out of sync and ending before the root motion was finished. The tasks now wait for the root motion to say it is done. #RB Laurent.Delayen #Tests PIE Change 3198486 on 2016/11/15 by David.Ratti Iniitalize EffectContext to default ASC EffectContext when no context is specified in AddGameplayCue_Internal. Fixes some GC translation issues. #rb none #tests pie Change 3198424 on 2016/11/15 by Rob.Cannaday Fix JSON_SERIALIZE_OBJECT_SERIALIZABLE macro in write mode not beginning a JSON object #rb ian.fox #tests class using JSON macros that writes a named subobject (BEGIN_JSON_SERIALIZER/JSON_SERIALIZE_OBJECT_SERIALIZABLE("name", obj)/END_JSON_SERIALIZER) Change 3198418 on 2016/11/15 by Rob.Cannaday More profiling for hitch when receiving friend request #jira OR-30503 #rb ian.fox #tests front end add/remove friend #lockdown nicholas.davies Change 3198214 on 2016/11/15 by David.Ratti Ability System: Added support for some advanced client prediction with the intention of removing latency from the effective duration of predictive gameplay effects. 1. Predicted GameplayEffect reconciliation. Predicted GEs are now reconciled with their replicated counter parts. Previously the predicted GE would be removed when the replicated one came in. Now we reconcile the predicted GE with the replicated GE, and throw out the replicated GE as if it was never added. To the outside, the predicted GE becomes the replicated GE seamlessly. 2. Server retry client activation fails. When a client ability activation fails on the server, the server can retry the activation for a few frames before officially failing it. This is to combat minor discrepencies caused by different server frame rate or jitter in networking conditions. The common example is that we handle RPCs at the top of the frame, before we update timer manager and removed expired GEs or end animations. Both features can be disabled with -DisableAdvancedClientPrediction. They can be toggled individually via config file. #QAr3view: 1. Verify ping time no longer affects attack speed OR-30123. We still expect packet loss to have some effect on rate of fire. 2. Be on the look out for "ability stuck" type of issues 3. If there are resources, I would like to get 2 people to give qualitative feedback on this. Have them lane 1v1 for ~7 minutes with 200 ms of ping (no packet loss). Do this twice, once normally and again with -DisableAdvancedClientPrediction on both client AND server. Do it blind: don't tell them which run has which setting, just see if they notice differences. The hope is that your LMB attacks feel consistent with respect to timing and match what the UI shows in terms of cooldown. I would recommend testing with Murdock and maybe a melee like Crunch #rb frank #c0der3view Frank.Gigliotti, Billy.Bramer, Fred.Kimberley #tests pie, golden path Change 3197309 on 2016/11/14 by Laurent.Delayen Additional debugging info for https://jira.it.epicgames.net/browse/OR-31266 #rb none #tests riftmage + venus VS riftmage multiPIE Change 3196654 on 2016/11/14 by Laurent.Delayen Additional debug info to track down https://jira.it.epicgames.net/browse/OR-31677 #rb none #tests compiles [CL 3276432 by Andrew Grant in Main branch]
2017-01-27 23:32:44 -05:00
static UAIPerceptionSystem* GetCurrent(UWorld& World);
static void MakeNoiseImpl(AActor* NoiseMaker, float Loudness, APawn* NoiseInstigator, const FVector& NoiseLocation, float MaxRange, FName Tag);
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3431384) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3252833 on 2017/01/10 by Ori.Cohen Refactor constraint so that it can be used for external solvers. (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework)) Change 3256288 on 2017/01/12 by Ori.Cohen Undo constraint refactor as we found a way around it and it made the code much harder to read/debug Change 3373195 on 2017/03/30 by Mike.Beach For nativization, changing it so we key off of the target platform-info struct instead of the platform (in preparation for defining the nativized plugin's platform whitelist). Change 3381178 on 2017/04/05 by Dan.Oconnor Make sure we don't inherit the NATIVE func flag when generating skeleton functions, also make sure all bojects outer'd to the skeleton class are marked transient #jira UE-43616 Change 3381532 on 2017/04/05 by Marc.Audy (4.16) Fix various cases where built lighting on child actors could be lost when loading a level #jira UE-43553 Change 3381586 on 2017/04/05 by Mike.Beach Now generating TArrayCaster conversions for nativized UClass arrays that need it (to handle different TSubclassOf arrays). #jira UE-42676, UE-43257 Change 3381682 on 2017/04/05 by mason.seay Some more changes to test map Change 3381844 on 2017/04/05 by Dan.Oconnor Match existing logic for CPF_ReturnParm/CPF_OutParm. Fixes compilation error in BP_TurbineBlades when using compilation manager Change 3382054 on 2017/04/05 by Zak.Middleton #ue4 - Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #jira UE-30998 Change 3382703 on 2017/04/06 by Lukasz.Furman fixed missing links between navmesh polys when there are more than 4 neighbor connections #jira UE-43524 Change 3383357 on 2017/04/06 by Marc.Audy (4.16) Make SetHiddenInGame propagate consistently with SetVisibility #jira UE-43709 Change 3383359 on 2017/04/06 by Dan.Oconnor Fix last errant SKEL reference when cooking Odin Change 3383591 on 2017/04/06 by Mike.Beach Prevent users from setting object variables as 'config' properties (disallowed by UHT). This prevents some errors that could happen later when users nativize the Blueprint. #jira UE-42085 Change 3384762 on 2017/04/07 by Zak.Middleton #ue4 - Fix SpringArmComponent not restoring relative transform when bUsePawnControlRotation is turned off. Fixes the editor interaction ignoring transform of the component in the viewport after bUsePawnControlRotation is toggled on then off, since by then the world transform had been overwritten (from tick in editor) and nothing would drive transform changes from the editable value. Toggling bUsePawnControlRotation off at runtime now restores the rotation to the initial relative rotation, not stomping it with the current pawn rotation, allowing toggling between the editable/desired base rotation and the control rotation. #jira UE-24850 Change 3384948 on 2017/04/07 by Dan.Oconnor Prevent GForceDisableBlueprintCompileOnLoad from causing all sorts of badness when dependencies are loaded as part of a Diff operation. Instead of setting a global flag we flag the package as LOAD_DisableCompileOnLoad Change 3385267 on 2017/04/07 by Michael.Noland Graph Editing: Pushed some node diffing code down from UAIGraphNode into UEdGraphNode so nodes with details panel properties will diff correctly (e.g., various animation nodes and BP switch nodes) #jira UE-21724 Change 3385473 on 2017/04/07 by Phillip.Kavan #jira UE-43067 - Fix broken pin wires after an Expand Node operation, along with some misc. cleanup. Change summary: - Fixed to use correct string for "Expand Node" transaction name. - Modified FBlueprintEditor::OnExpandNodes() to consolidate some redundant code. - Fixed to generate a unique node GUID for cases where the source graph is not removed after expansion. Change 3385583 on 2017/04/07 by Dan.Oconnor Handle CreatePropertyOnScope nullptr return values (happens for structs missing a struct property) #jira UE-43746 Change 3386581 on 2017/04/10 by Michael.Noland Blueprints: Further hardening FBlueprintActionInfo::GetOwnerClass() #jira UE-43824 Change 3386615 on 2017/04/10 by Marc.Audy Instanced properties can now properly be set on a per-instance basis in blueprint added components. #jira UE-42066 Change 3387000 on 2017/04/10 by Marc.Audy Fix includes for CIS Change 3387229 on 2017/04/10 by mason.seay More changes to TM-Gameplay Added Save Game test (with blueprint) Tick Interval test (with blueprint) BP logic cleanup Level organization Change 3388437 on 2017/04/11 by Mike.Beach Adding support for map/set literals in the backend (so you can use set nodes for structs containing sets/maps, without having to connect a RHS input - resets to struct defaults). #jira UE-42617 Change 3388532 on 2017/04/11 by mason.seay Submitting latest changes for crash repro Change 3389026 on 2017/04/11 by Ben.Zeigler Performance and bug fixes for incremetal cooking with asset registry, duplicate of several changes made on //Fortnite/Main Fix it so AssetRegistry.ScanPathsAndFilesSynchronous won't scan subdirectories inside already scanned directories, this cuts down on the number of cache files Fix 2 second stall when shutting down AssetSourceFilenameCache if it had never been previously created Change 3389163 on 2017/04/11 by Ben.Zeigler #jira UE-42922 Fix it so connecting function input node output pins does not clear default value, we only want to clear the value when connecting an input pin. Properly testing this fix depends on UE-43883 Change 3389205 on 2017/04/11 by Marc.Audy Protect against a handful of GEditor usages that can now be hit in standalone Change 3389220 on 2017/04/11 by Marc.Audy Don't borrow ClassWithin to masquerade as ParentClass during compilation and instead just set the super struct immediately Change 3389222 on 2017/04/11 by Michael.Noland Framework: Adding a cvar (t.TickComponentLatentActionsWithTheComponent) to allow users to revert to the old behavior on when component latent actions tick - Non-zero values behave the same way as actors do, ticking pending latent action when the component ticks, instead of later on in the frame (default behavior in 4.16 and beyond) - Prior to 4.16, components behaved as if the value were 0, which meant their latent actions behaved differently to actors This CVar will be removed in a future version, defaulting to on #jira UE-43661 Change 3389276 on 2017/04/11 by Marc.Audy Spelling fix and NULL to nullptr Change 3389303 on 2017/04/11 by Mieszko.Zielinski Made sure AIController::Posses doesn't get called when compiling Pawn BP #UE4 #jira UE-43873 Change 3390215 on 2017/04/12 by mason.seay Removed some tests, will need further review Change 3390638 on 2017/04/12 by Mike.Beach Generalizing the omission of the CoerceProperty (in EmitTerm) - previously we were only omitting properties for our custom array lib. For wildcards, a coerce property should not be used as its type will not match. NOTE: There is a slight behavior change in UEdGraphSchema_K2::ConvertPropertyToPinType(), as it will return 'wildcard' for params marked as 'ArrayTypeDependentParams' (previously would have returned 'int'). #jira UE-42747 Change 3390774 on 2017/04/12 by Ben.Zeigler #jira UE-43911 Fix several issues with saving a runtime asset registry containing redirectors that caused crashes in cook on the fly. Don't resolve redirectors on incoming links because it will make a circular link, and fix an issue where chained redirectors would break the for loop iteration and return a bad dependency Fix it so the asset registry written out at the beginning of CookOnTheFly uses the registry generator, otherwise it will include all of the stripped editor only tags Change 3390778 on 2017/04/12 by Ben.Zeigler Fix UCookOnTheFlyServer::CollectFilesToCook to check for initial unsolicited packages up front. This is required in iterative mode because it may skip cooking all explicit packages and thus miss a new startup loaded package Change 3390782 on 2017/04/12 by Ben.Zeigler Change RunProjectCommand to not imply -nomcp, and allow reading -clientcmdline to override setting the map parameter to 127.0.0.1 by default Fix RunProjectCommand to remove ios-specific checks to not pass weird platform parameters, and instead never pass them Fix PS4Platform to pass along command line when calling build cook run, args needs to be the last parameter so explicitly set -target= Change 3390859 on 2017/04/12 by Mike.Beach T3D class fields now export with the class's fully qualified path name (to avoid abiguity). Since we can have multiple classes with the same name (Blueprints in different folders), we have to use the class's fully qualified object path. #jira UE-28048 Change 3390914 on 2017/04/12 by Lukasz.Furman fixed missing navlink component's transform in exported navigation data #jira UE-43688 Change 3391122 on 2017/04/12 by Ben.Zeigler Add new PreloadPrimaryAssets call to AssetManager that stream the desired assets without modifying the official load/unload state. This is useful if you want to preload things in case the might be used in the future, and it also supports recursion Fix crash calling GetAssetDataForPath with null path Change 3391494 on 2017/04/12 by Dan.Oconnor Fix bad references in deep object (widget) hierarchies #jira UE-43802 Change 3391529 on 2017/04/12 by Dan.Oconnor Fix log spam, accidently submitted #rnx Change 3391756 on 2017/04/12 by Dan.Oconnor LinkExternalDependencies needs to be performed before we RefreshVariables #jira UE-43843 Change 3392542 on 2017/04/13 by Marc.Audy Ensure that initialized actors get cleaned up when removed from world even if that world hasn't begun play. #jira UE-43879 Change 3392746 on 2017/04/13 by Marc.Audy (4.16) When duplicating a blueprint node, correctly make the new node a sibling of the duplicated node, not a child of it (unless duplicating the root component). Also resets scale of a duplicated root component to 1 to avoid a squaring of the scale for that component. #jira UE-40218 #jira UE-42086 Change 3393253 on 2017/04/13 by Dan.Oconnor Make sure calculated meta data is correctly set on functions generated by the compilation manager (SKEL_ class functions) #jira UE-43883 Change 3393509 on 2017/04/13 by Mike.Beach Removing hack'ish ResetLoaders() call that was causing undesired side-effects (resetting of a loaded package that other objects were relying on). This was originally intended to release file handles so separate editor processes could make updates and save the file (from CL 1712376). Using ResetLoaders() for this is bad though, as it has too many side effects. Instead we have to wait for GC to run. This also makes sure that GC should run as intended as the CookOnTheFly sever is idling. #jira UE-37284 Change 3394350 on 2017/04/14 by Michael.Noland Core: Making FDateTime and FTimespan actually reflected, so they get duplicated properly in CopyPropertiesForUnrelatedObjects, etc... #jira UE-39921 Change 3395985 on 2017/04/17 by Phillip.Kavan #jira UE-38280 - Fix invalid custom type selections on member fields in the User-Defined Structure Editor after a reload. Change summary: - Ensure that the 'SubCategoryObject' member in a UDS variable descriptor has been loaded when converting to an FEdGraphPinType. Change 3396152 on 2017/04/17 by Marc.Audy TickableGameObjects that have IsTickableInEditor false should not tick in the editor #jira UE-40421 Change 3396279 on 2017/04/17 by Phillip.Kavan #jira UE-43968 - Fix failed validation of bitmask enum types when serializing bitmask literal nodes. Change 3396299 on 2017/04/17 by Dan.Oconnor Fix resintancing issues exposed by running TM-Gameplay with -game. We cannot reinstance actors in levels on load because the scene is not created. #jira UE-43859 Change 3396712 on 2017/04/17 by Marc.Audy Call PostLoad on subobjects before copying for unrelated properties to avoid cases where an out of date object patched over in the linker has not been brought up to date #jira UE-38234 Change 3396718 on 2017/04/17 by Mike.Beach Adding a search bar to the components tree for Blueprints. #epicfriday #jira UE-17620 Change 3396999 on 2017/04/17 by Mike.Beach In generated code, call event '_Implementation' functions directly for interface functions being invoked on self (avoids a UHT runtime error). #jira UE-44018 Change 3397700 on 2017/04/18 by Marc.Audy UT struct BlueprintType fixups Change 3397701 on 2017/04/18 by Marc.Audy Odin struct BlueprintType fixups Change 3397703 on 2017/04/18 by Marc.Audy Ocean struct BlueprintType fixups Change 3397704 on 2017/04/18 by Marc.Audy WEX struct BlueprintType fixups Change 3397705 on 2017/04/18 by Marc.Audy Additional UT blueprint type struct fixups Change 3397706 on 2017/04/18 by Marc.Audy Fortnite struct BlueprintType fixups Change 3397708 on 2017/04/18 by Marc.Audy Fixup Engine BlueprintType markup of structs Change 3397709 on 2017/04/18 by Marc.Audy Sample Game struct BlueprintType fixups Change 3397711 on 2017/04/18 by Marc.Audy Mark AnimNodes as BlueprintType and BlueprintInternalUseOnly Change 3397712 on 2017/04/18 by Marc.Audy Paragon struct BlueprintType fixups Change 3397735 on 2017/04/18 by Marc.Audy Definition pieces of BlueprintInternalUseOnly to fix UHT errors with structs already marked to use it Change 3397912 on 2017/04/18 by Mike.Beach Fix for CIS warnings about shadowed variables (fallout from CL 3396718). Change 3398455 on 2017/04/18 by Marc.Audy Make less critical errors log an error rather than immediately throwing allowing multiple errors to be reported in the same compile Change 3398491 on 2017/04/18 by Marc.Audy BPRW/BPRO in a non-BlueprintType is now a UHT error Change 3398539 on 2017/04/18 by Marc.Audy Fixup live link struct markups Change 3399412 on 2017/04/19 by Marc.Audy Fix Match3 blueprint type struct markups Change 3399509 on 2017/04/19 by Phillip.Kavan #jira UE-38574 - Fix AnimBlueprint function graphs marked as 'const' to treat 'self' as read-only when compiling. Change summary: - Modified FKismetCompilerContext::ProcessOneFunctionGraph() to use the function graph schema rather than the compiler context schema for both the function context's schema as well as testing the function for 'const'-ness. For AnimBPs, the compiler context and the function graph context can differ, so we need to make sure we are using the right one when making queries for a specific function context during compilation. - Minor cleanup: changed the function context schema to be 'const' in order to be consistent with the function graph GetSchema() API's result. Added a few 'const' qualifiers where needed to match. - Added a new object version in order to avoid breaking compilation of existing AnimBP function graphs that may already be violating the 'const' rule (this is the same thing that was done when 'const' was first added to "normal" BP function graphs). Just as with normal function graphs in place before the addition, a warning will be generated for existing AnimBP function graphs if they violate 'const' correctness, and an error will be generated for all new ones. Change 3399749 on 2017/04/19 by Mike.Beach Hiding the Nativized Blueprints plugin from the in-editor browser (prevent users from disabling it). Change 3399774 on 2017/04/19 by Marc.Audy ConditionalPostLoad is already called on StaticMesh earlier in the function #rnx Change 3400313 on 2017/04/19 by Mike.Beach Mirroring CL 3398673 from 4.16 Now, with ICWYU, making sure that the coresponding header gets included first in nativized Blueprint files (else we get a UHT error). Had to fixup some ShooterGame specific files as a result (they had missing includes and forward declarations). #jira UE-44124 Change 3400328 on 2017/04/19 by Mike.Beach Missing file from mirrored change (CL 3400313 - mirroring CL 3398673 from 4.16) #jira UE-44124 Change 3400415 on 2017/04/19 by Chad.Garyet adding physx switch build to framework Change 3400514 on 2017/04/19 by Mike.Beach Back out changelist 3400313 / 3400328 (mirrored from CL 3398673 in 4.16), as it was producing "include PCH first" errors. Likely, CL 3398673 was a fix for a 4.16 specific change, altering the expected include order. We'll have to wait for this one to be integrated back. Change 3400552 on 2017/04/19 by Marc.Audy Undo the calling of post load prior to the CPFUO as dependent objects may not yet be loaded. Instead copy the need load flag to the new CDO subobject, similarly to how the top level CDO object copies its flags over. #jira UE-44150 Change 3400815 on 2017/04/19 by Marc.Audy Spelling fix (part of PR #3490) #rnx Change 3400918 on 2017/04/19 by Marc.Audy Partial pull of PR #3490: Improved remapping game controls support (Contributed by projectgheist) This portion brings in the exposure of the bindings to blueprint #jira UE-44122 Change 3401550 on 2017/04/20 by Marc.Audy fix kitedemo blueprint type markup #rnx Change 3401702 on 2017/04/20 by Mike.Beach Make it so plugins added to a project through the .uproject's 'AdditionalPluginDirectories' list get folded into the generated code project (for visual studio, etc.). Change 3401720 on 2017/04/20 by Mike.Beach Add white and black lists for target type (game, client, server, etc.) to plugin module descriptors. Change 3401725 on 2017/04/20 by Mike.Beach Whitelisting the nativized Blueprint plugin for only the targets it was built for (game, server, or client). Change 3401800 on 2017/04/20 by Ben.Zeigler Add Algo::BinarySearch, LowerBound, and UpperBound. These are setup to allow binary searching a presorted array, and allow for specifying projection and sort predicates. Convert some engine code to use it Add TSortedMap, which is a map data structure that has the same API as TMap, but is backed by a sorted array. It uses half the memory and performance is faster below n=10 Add FName::CompareIndexes so a SortedMap with FNames can be used without doing very slow string compares, and FNameSortIndexes predicate to sort by it Add code to Algo and Container tests. Split up container tests so the new ones aren't run in smoketest as they are a bit slow Add RemoveCurrent and SetToEnd to ArrayIterator Change 3401849 on 2017/04/20 by Marc.Audy Partial pull of PR #3490: Improved remapping game controls support (Contributed by projectgheist) This portion brings bug fixes and improvements to InputKeySelector UMG widgets. #jira UE-44122 Change 3402088 on 2017/04/20 by Marc.Audy Focus the search box when expanding the map value type #jira UE-44211 Change 3402251 on 2017/04/20 by Ben.Zeigler Fix issue where SortedMap needs to be resorted after serialization, because the sorting may have changed from when it was saved out Change 3402335 on 2017/04/20 by Ben.Zeigler Significant changes to FAssetData serialization and memory, cuts memory significantly but will break code that was using some of the internal API that was not properly hidden before Both Editor and Runtime cache now use the same FAssetRegistryVersion, which is now registered as a custom version Rename FAssetData and FAssetPackage operator<< to SerializeForCache to make it clear that it isn't safe to use for general serialization Remove GroupNames from FAssetData, it has not been useful since the UE4 package structure changed around 4.0 Rename generic-sounding but not actually generic SharedMapView class to AssetDataTagMapSharedView to indicate what it is actually used for Change TagsAndValues to use a new array-backed TSortedMap as the base structure instead of a hash map. Also, it only allocates the map on demand, which saves significant memory at runtime as many packages have no tags Add bFilterAssetDataWithNoTags to [AssetRegistry] ini section, if set it will only save cooked asset data if it has tags, off by default but saves significant memory if your whitelist is set up properly Fix issue where asset registry tags updated by loading assets during cook were not being reflected in the cooked registry Add AssetRegistry::GetAllocatedSize and add to MemReport output Change 3402457 on 2017/04/20 by Ben.Zeigler Enable asset registry iteration and stripping unused asset data in Fortnite. Registry iteration is already on in //Fortnite/Main, stripping is a new feature I want to test Change 3402498 on 2017/04/20 by Ben.Zeigler CIS fix. Why did this compile locally? Change 3402537 on 2017/04/20 by Ben.Zeigler Remove ensure for making AssetData for subobjects, the editor does this for thumbnail creation in some cases Change 3402600 on 2017/04/20 by Ben.Zeigler Add bShouldGuessTypeAndNameInEditor to manager settings, can be set false for games where type cannot be safely implied and content must be resaved Fix up some bool setting code inside asset manager, and fix const correctness and for iterator issues AssetManager can now discover any BlueprintCore type when bHasBlueprintClasses=true Add AssetManager.DumpAssetRegistryInfo to output detailed asset registry usage stats Add Primary Name to asset audit window by default Change 3403556 on 2017/04/21 by Marc.Audy Fix Orion input key selector override class #rnx Change 3404090 on 2017/04/21 by mason.seay Applying Forcefeedback to test map Change 3404093 on 2017/04/21 by mason.seay Changing text in level Change 3404139 on 2017/04/21 by mason.seay Added Force Feedback test and made some tweaks. Change 3404146 on 2017/04/21 by mason.seay Added source reference to Instanced Variable test Change 3404154 on 2017/04/21 by mason.seay More minor tweaks Change 3404155 on 2017/04/21 by Marc.Audy Remove auto #rnx Change 3404188 on 2017/04/21 by Marc.Audy Fixed crash changing variable type when any type other than map #jira UE-44249 #rnx Change 3404463 on 2017/04/21 by Ben.Zeigler Fix asset data code to not ensure when loading an object with invalid exports, and instead print warning with name of package that needs to be resaved Resave a map that had a redirector from a DIFFERENT package saved in it's exports. I do not understand how this happened, but it appears to be related to the lightmap BuiltData transition when old maps are opened Change 3404465 on 2017/04/21 by Ben.Zeigler Fix issue with trying to load editor-only asset classes in a cooked build Fix issues with renaming or changing template Ids of assets from the editor Always print the Duplicate Asset ID error, as if you have more than one the ensuremsg only goes off once Change 3404481 on 2017/04/21 by Dan.Oconnor Remove unneeded walk up hierarchy - prevent stale entries in action database if we compile a BP but don't compile its children Change 3404510 on 2017/04/21 by Phillip.Kavan #jira UE-35727 - Collapsed graphs containing a local variable node will no longer cause a compile error when the parent graph is renamed. Change 3404590 on 2017/04/21 by Michael.Noland Editor: Fixed incorrect filtering of abstract/deprecated UDeveloperSettings and UContentBrowserFrontEndFilterExtension classes caused by a typo (HasAnyCastFlags versus HasAnyClassFlags) Change 3404593 on 2017/04/21 by Marc.Audy Fixed another crash to do with input pin secondary combo box #jira UE-44269 #rnx Change 3404600 on 2017/04/21 by Michael.Noland Core: Allow UE_GC_TRACK_OBJ_AVAILABLE to be set externally #rnx Change 3404602 on 2017/04/21 by Michael.Noland Engine: Switched from an include to a forward declaration of SWidget in UDeveloperSettings to keep it slim #rnx Change 3404608 on 2017/04/21 by Michael.Noland Core: Marked TNumericLimits as constexpr so they can be used in static asserts Change 3404659 on 2017/04/21 by Michael.Noland Engine: Adding includes back to two UDeveloperSettings subclasses Change 3405289 on 2017/04/24 by Marc.Audy Remove auto #rnx Change 3405446 on 2017/04/24 by Marc.Audy Fix Win32 unsigned compile issue Change 3405512 on 2017/04/24 by Mike.Beach Piping through NativizationOptions to filename generation (so we're able to gen different files names per target: client vs. server). Change 3406080 on 2017/04/24 by Ben.Zeigler Deprecate UEngine::OnPostEngineInit and move to FCoreDelegates, clean up comments for the initialization delegates Call OnPostEngineInit from commandlet initialization as well as normal execution. I thought about making a wrapper function, but the commandlet calls EditorInit directly so it wouldn't work Bind delegate to refresh the AssetRegistry native class hierarchy after engine init so it picks up game/plugin classes. Undo ini change that was required to hack around this Change 3406381 on 2017/04/24 by Ben.Zeigler #jira UE-23768 Enable Run Physics With No Controller for montage test pawn. The montage pawn has no controller so wasn't correctly running physics when the root motion stopped. This flag needs to be set to allow it to correctly stop after the montage is over Change 3406438 on 2017/04/24 by Ben.Zeigler Fix deprecation warning Change 3406519 on 2017/04/24 by Phillip.Kavan #jira UE-43612 - Suppress array "Get" node fixup notifications on load when the BP Compilation Manager is enabled. Change summary: - Wrapped BPCM calls to FBlueprintEditorUtils::ReconstructAllNodes() and ReplaceDeprecatedNodes() duirng compile-on-load with bIsRegeneratingOnLoad = true. This matches the BP's state during compile-on-load when the BPCM is not enabled. Change 3406565 on 2017/04/24 by Dan.Oconnor Make sure all interface functions are added to skeleton #jira UE-44152 Change 3407489 on 2017/04/25 by Ben.Zeigler #jira UE-44317 Fix game-only TickableGameObjects to correctly tick in PIE Change 3407558 on 2017/04/25 by Ben.Zeigler Fix Fortnite cook warnings, issue had to do with the CDO being registered as a Primary Asset in conflict with the Class being registered Fix issue with renaming a BP primary asset not finding the old name Change 3407701 on 2017/04/25 by Dan.Oconnor Remove unneeded null check, static analysis doen't like the inconsistency Change 3407995 on 2017/04/25 by Marc.Audy Fixed maps and sets not working correctly with split pin. #jira UE-43857 Change 3408124 on 2017/04/25 by Ben.Zeigler #jira UE-39586 Change it so the blueprint String/Name/Object to Text node creates culture invariant text, and also have them show as an expanded node with a comment explaining this Fix Transform to actually return in the format specified in the comment, and fix comments on many text conversions Change 3408134 on 2017/04/25 by Marc.Audy Graph pin container type now represented by an enumeration (EPinContainerType) rather than 3 "independent" booleans. FEdGraphPinType constructor, UEdGraphNode::CreatePin, and FKismetCompilerContext::SpawnInternalVariable that took 3 booleans deprecated and replaced with a version that takes EPinContainerType. UEdGraphNode::CreatePin parameters reorganized so that PinName is before ContainerType and bIsReference, which default to None and false respectively Change 3408256 on 2017/04/25 by Michael.Noland Core: Changed UClass::ClassFlags to be of type EClassFlags for improved type safety Change 3408282 on 2017/04/25 by Marc.Audy (4.16) Fix incorrect positioning of instance components after duplication #jira UE-44314 Change 3408404 on 2017/04/25 by Mike.Beach Adding and removing the nativized plugin to/from the project when we alter the packaging nativization setting (so it gets picked up by project generation). Change 3408445 on 2017/04/25 by Marc.Audy Fix up missed deprecation cases #rnx Change 3409354 on 2017/04/26 by Marc.Audy Fix Linux CIS failure #rnx Change 3409487 on 2017/04/26 by Marc.Audy When dragging assets in to the SCS create them as siblings, not nested #jira UE-43041 Change 3409776 on 2017/04/26 by Ben.Zeigler #jira UE-44401 Fix issue with cooking a map containing a reparented component. In that case the child component may think it's not editor only, but it's archetype is editor only. This is not allowed in EDL, so now the child is marked as editor only as well Change 3410168 on 2017/04/26 by Dan.Oconnor Avoid calling virtual functions in the middle of compile #jira UE-44243 Change 3410252 on 2017/04/26 by Lukasz.Furman adjusted WITH_GAMEPLAY_DEBUGGER checks after IWYU changes #ue4 Change 3410385 on 2017/04/26 by Marc.Audy ChildActorComponent SetClass no longer fails when setting at runtime. #jira UE-43356 Change 3410466 on 2017/04/26 by Michael.Noland Core: Ensuring EClassFlags is 32 bit in a different way (underlying type of the enum is coming out signed even though all members are unsigned, long term fix is probably to move it to an enum class) #rnx Change 3410476 on 2017/04/26 by Michael.Noland Automation: Deleting some commented out methods #rnx Change 3411070 on 2017/04/27 by Marc.Audy Properly complete deprecation of old attachment API Change 3411338 on 2017/04/27 by mason.seay Map for Latent Action Tick Bug Change 3411637 on 2017/04/27 by Ben.Zeigler Back out CL #3381532 as it was causing crashes when adding new variables to blueprints, as the transaction array was being recursively modified while it was being added to Change 3412052 on 2017/04/27 by mason.seay Updated jump test map and pawn Change 3412231 on 2017/04/27 by Ben.Zeigler Fix issue where running SearchAllAssets multiple times after mounting new paths would throw away the asset registry cache, which slowed down incremental cooking substantially because the cooker mounts the autosave folder Duplicate of CL #3411860 Change 3412233 on 2017/04/27 by Ben.Zeigler Made FStreamableHandle::GetLoadedCount much faster by taking advantage of existing progress counter Duplicate of CL #3411778 Change 3412235 on 2017/04/27 by Ben.Zeigler Add code to FStringAssetReferenceThreadContext and FStringAssetReferenceSerializationScope which allows setting package name and collect options for string asset references serialized via something other than linker load Make RedirectCollector threadsafe to avoid issues with async loading asset references Fix it so ProcessStringAssetReferencePackageList will remove entries from the string asset array like resolve did, and rename function to indicate that Fix it so string asset references created by asset labels do not automatically get cooked, and significantly improve the speed of labels with lots of assets Add code to cooker and asset manager to explicitly mark non-cookable assets as NeverVook, this stops labels from ending up in the build if set that way Added option to not recurse package dependency changes more than one level when hashes change. This ended up not being significantly faster in a realistic case so left disabled Duplicate of CL #3412080 Change 3412352 on 2017/04/27 by Marc.Audy Refix lighting getting wrong position when getting component instance data Change 3412426 on 2017/04/27 by Marc.Audy Take first steps to making ComponentToWorld private and force use of accessor Make bWorldToComponentUpdated private Make ComponentToWorld and bWorldToComponentUpdated mutable Add a SetComponentToWorld function for the (likely ill-advised) places that were setting it directly. Change 3412468 on 2017/04/27 by Marc.Audy Remove last remnants of deprecated (4.11) custom location system Change 3413398 on 2017/04/28 by Marc.Audy Fix up missed deprecated attachment API uses Change 3413403 on 2017/04/28 by Marc.Audy Fix Orion compile error #rnx Change 3413448 on 2017/04/28 by Marc.Audy Fix up kite demo component to world privataization warnings #rnx Change 3413792 on 2017/04/28 by Ben.Zeigler Fix many bugs with blueprint pin default values, and add "Reset to Default Value" option to pin context menu Deprecate and rename SetPinDefaultValue because it actually sets the Autogenerated default. This was being called in bad places and destroying the stored autogenerated defaults #jira UE-40101 Fix expose on spawn pins to correctly update when the spawned object's defaults change #jira UE-21642 Fix struct pin default values to properly update when the struct is changed #jira UE-39418 Fix changed function/macro default values to properly update in already placed call nodes Change 3413839 on 2017/04/28 by samuel.proctor Added some Blueprint focused tests for TM-Gameplay Change 3414030 on 2017/04/28 by Ben.Zeigler Enable use of AssetPtr variables with Config, for native and blueprint This incorporates CL #3302487 but also enables for blueprint usage as that code is new to framework branch Change 3414229 on 2017/04/28 by Marc.Audy Fixup virtuals not calling their Super Remove some autos #rnx Change 3414451 on 2017/04/28 by Lukasz.Furman static analysis fix for gameplay debugger Change 3414482 on 2017/04/28 by Ben.Zeigler Fix crash found where changing pin type on ConvertAsset accessed an array while deleting it Change 3414609 on 2017/04/28 by Ben.Zeigler #jira UE-18146 Refresh graph when disconnecting a resolve asset id node Change 3415852 on 2017/05/01 by Marc.Audy Remove unused code #rnx Change 3415856 on 2017/05/01 by Marc.Audy auto removal #rnx Change 3415858 on 2017/05/01 by Marc.Audy Fix function taking an input as reference when unneeded and causing (still unclear why it suddenly started showing up) error in cooking #rnx Change 3415946 on 2017/05/01 by Marc.Audy Have K2Node_StructOperation skip the K2Node_Variable validation as it doesn't need a property (per CL# 1756451) #rnx Change 3415988 on 2017/05/01 by Lukasz.Furman renamed WorldContext param in AI related static blueprint functions to remove load/cook warnings #jira UE-44544 Change 3416030 on 2017/05/01 by Ben.Zeigler Fix issue with WorldContext pins being broken by my pin value refactor, partial paths like "WorldContext" need to be stored as strings and not as broken object references. Change 3416230 on 2017/05/01 by Marc.Audy Fix spelling error #rnx Change 3416419 on 2017/05/01 by Phillip.Kavan #jira UE-44213 - Nativizing a Blueprint class with a non-nativized Blueprint class subobject dependency will no longer lead to a crash at load time. Change summary: - Modified the FFakeImportTableHelper ctor to inject subobject CDOs into the 'SerializeBeforeCreateCDODependencies' array. This in turn ensures that EDL will serialize those subobject CDOs (if necessary) before we create the subobject's nativized owner's CDO at load time. - Modified FEmitDefaultValueHelper::GenerateCustomDynamicClassInitialization() to emit MiscConvertedSubobject instantiations AFTER we emit the FillUsedAssetsInDynamicClass() call. This is now consistent with the code emitted for other subobjects (all of which assumes that the UsedAssets array has been initialized). - Modified FFindAssetsToInclude::HandleObjectReference() to add UField owner CDOs in addition to the owner class to the asset dependency list. This ensures that owner CDOs will be emitted alongside the class to both the nativized asset dependency table as well as to the fake import table associated with the UDynamicClass linker for the nativized BP asset. Change 3416425 on 2017/05/01 by Phillip.Kavan #jira UE-44219 - Nativizing a Blueprint class with a nativized DOBP class dependency will no longer lead to a compile error at cook/nativization time. - Modified the FGatherConvertedClassDependencies ctor to properly handle DOBPs in exclusive mode that have been explicitly enabled for nativization. Previously, this code wasn't taking that possibility into account, and as a result could lead to a missing header file in a dependent nativized class body's include set. - Modified FGatherConvertedClassDependencies::GetFirstNativeOrConvertedClass() to remove the 'bExcludeBPDataOnly' parameter, as it was primarily just being used for a redundant exclusion check when called from the FGatherConvertedClassDependencies ctor. That call site has now been modified to start searching from the super class instead. Additionally, any DOBPs will already fail the preceding WillClassBeConverted() check if they have not been explicitly enabled for nativization in exclusive mode, and will always fail if nativizing in inclusive mode. The extra check was breaking the explicitly-enabled case, so it was removed to allow explicitly-enabled DOBPs to pass. Notes: - Allowing for explicitly-enabled DOBPs in exclusive mode may be removed in a future change, but since it is currently supported, the changes noted above will at least ensure that the generated code will compile properly for now. Change 3416570 on 2017/05/01 by mason.seay Added UMG test to map. Tweaked force feedback test Change 3416580 on 2017/05/01 by mason.seay Resubmitting sub levels Change 3416597 on 2017/05/01 by Dan.Oconnor Compilation manager iteration, adds machinery for individual blueprint compilation, adds comments, cleans up duplicated code Change 3416636 on 2017/05/01 by Phillip.Kavan #jira UE-44505 - Potential fix for a low-repro crash tied to the Blueprint graph context menu. Change summary: - Switched FBlueprintActionInfo::ActionOwner to be a weak object reference. Change 3416960 on 2017/05/01 by Dan.Oconnor Use compilation manager when clicking the compile button, PIE'ing, etc Change 3417207 on 2017/05/01 by Ben.Zeigler Fix issue with None strings causing default value parsing failures Add SetPinDefaultValueAtConstruction needed by some other changes Change 3417519 on 2017/05/01 by Ben.Zeigler Fix BP compile errors caused by local variables with invalid default values. There's no reason to set autogenerated here because the nodes are transient and invisible in the UI. There is still a problem here, local variables are not getting their default values validated when type is changed, so you end up with an integer that has the default value of a struct. Change 3418659 on 2017/05/02 by Ben.Zeigler #jira UE-44534 Fix it so animation node pins get properly created autogenerated default values that are based on the node struct defaults. This fixes issues when they are reset to other defaults #jira UE-44532 Fix it so connecting an animation asset pin on a node player resets the pin value to the autogenerated default instead of the cached asset. This was causing old unused assets to get unnecessarily cooked Fix it so any animation node with an exposed pin that is an object property will reset that object propery when the pin is exposed. This fixes UE-31015 in a generic way Change the OptionalPinManager to take a Defaults address as well as a current address, to allow setting autogenerated defaults properly Remove Import/ExportKismetDefaultValueToProperty as they were redundant with PropertyValueFromString and were using the wrong pin setting functions, replaced with PropertyValueFromString_Direct and calling the schema pin set functions I need to write some backward compatibility code to fix existing nodes, I'll do that in a later checkin Change 3418700 on 2017/05/02 by Ben.Zeigler Actually fix None object paths for real this time. I did not test sufficiently before Change 3418811 on 2017/05/02 by Ben.Zeigler Fix existing animation blueprint nodes with dead asset references duplicated by pins. This code can be applied independent of the other change to fix specific games Change 3419165 on 2017/05/02 by Dan.Oconnor Add misc. functionality from FKismetEditorUtilities::CompileBlueprint Change 3419202 on 2017/05/02 by Marc.Audy Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3417825 #rnx Change 3419236 on 2017/05/02 by mason.seay Removed OnPressed event from Widget BP Change 3419314 on 2017/05/02 by Marc.Audy Fix bad auto-resolve #rnx Change 3419524 on 2017/05/02 by Marc.Audy PR #3528: Improved Input BP library node display names (Contributed by projectgheist) #jira UE-44587 #rn Improved Input BP library node display names Change 3419570 on 2017/05/02 by Zak.Middleton #ue4 - Fix typo in TFunctionRef comment/example. Change 3419709 on 2017/05/02 by Dan.Oconnor Fix missing category metadata on SkeletonGeneratedClass when using compilation manager Change 3419756 on 2017/05/02 by Dan.Oconnor Remove unintentional verbosity increase Change 3420875 on 2017/05/03 by Marc.Audy Make IsExecPin static Minor optimization to IsMetaPin #rnx Change 3420981 on 2017/05/03 by Marc.Audy Change tagging temporarily until other changes are done so that we don't have warnings in the meantime #rnx Change 3421367 on 2017/05/03 by Marc.Audy Manually introduce changes from CL# 3398673 in 4.16 that failed to make it to Dev-Framework as a result of the integration submitted as CL# 3401725. #rnx Change 3421685 on 2017/05/03 by Ben.Zeigler #jira UE-23001 Convert literal Asset ID/Class ID pins to store path as string instead of as hard object reference. Old pins are fixed on load, after resaving the hard references will go away Refactor the way that FStringAssetReference and FAssetPtr are serialized, it now does the various fixups in FStringAssetReference::SerializePath, which is called from archivers Change it so the asset registry reads in a list of all scanned redirectors and adds them to GRedirectCollector, this means that saving a string asset reference will automatically fix it up to point to the redirector destination Change the default behavior of FAssetPtr serialize on ArchiveUObject to match what most of it's children want, and remove several special case hacks. It now serializes as asset reference when saving/loading, and as object for other cases Deprecate StringAssetReferenceLoaded/StringAssetReferenceSaving delegates, replace with PreSavePath and PostLoadPath on FStringAssetReference Make AssetLongPathname private on FStringAssetReference, it was deprecated in 4.9 Change 3421728 on 2017/05/03 by Phillip.Kavan Mirror CL 3408285 from //UE4/Release-4.16. #jira UE-44124 #rnx Change 3422370 on 2017/05/03 by Dan.Oconnor Mirror 3422359 Implement UBlueprintGeneratedClass::NeedsLoadForEditorGame to match UBlueprint, also tag a class's CDO as NeedsLoadForEditorGame. This prevents us from failing to load a UBlueprint's GeneratedClass when running the editor with -server. #jira UE-44659 Change 3423192 on 2017/05/04 by Ben.Zeigler CIS Fix Change 3423305 on 2017/05/04 by Ben.Zeigler Fix "Missing opening parenthesis" warnings for Vector and Rotator the same way they were fixed for Transform Change 3423358 on 2017/05/04 by Marc.Audy Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3422809 #rnx Change 3423766 on 2017/05/04 by Ben.Zeigler #jira UE-44680 Delete some corrupted redirectors that are no longer in use Change 3423804 on 2017/05/04 by Dan.Oconnor Honor SaveIntermediateCompilerResults when using compilation manager Change 3424010 on 2017/05/04 by Marc.Audy Validate that switch string cases are unique Change 3424011 on 2017/05/04 by Marc.Audy Re-fix switch node default pin not appearing as an exec output Remove unused boolean Change 3424071 on 2017/05/04 by Ben.Zeigler Delete FixupRedirects commandlet, replace with -FixupRedirects/FixupRedirectors option on ResavePackages. This new method is much faster than the old commandlet as it uses the asset registry vs loading all packages, fixing up all redirectors in Fortnite only took about an hour vs 12+ hours the old way Removed some hacky bits in Core that only existed to support FixupRedirects Change it so the AssetRegistry listens to DirectoryWatcher callbacks in commandlets now that commandlets use the asset registry properly. This won't do anything unless you tick directory watcher the way that ResavePackages does Change 3424313 on 2017/05/04 by Dan.Oconnor Address missing property flags on SkeletonGeneratedClass when using compilation manager #jira UE-44705 Change 3424325 on 2017/05/04 by Phillip.Kavan #jira UE-44222 - Move nativized UDS implementation details into its own .cpp file in order to avoid circular dependencies. Change summary: - Modified IKismetCompilerInterface::GenerateCppCodeForStruct() to include an output parameter for CPP source and modified FKismet2CompilerModule to match the updated API. - Modified IBlueprintCompilerCppBackend::GenerateCodeFromStruct() to include an output parameter for CPP source and modified FBlueprintCompilerCppBackendBase to match the updated API. - Modified FBlueprintNativeCodeGenUtils::GenerateCppCode() to adjust the call to GenerateCppCodeForStruct() to include CPP source output. - Modified FGatherConvertedClassDependencies::DependenciesForHeader() to switch UDS property dependencies to be forward declarations rather than includes (for default value init code). - Modified FEmitDefaultValueHelper::GenerateGetDefaultValue() to emit implementation details to the 'Body' container, and adjust the header content to be a declaration only. - Modified FIncludeHeaderHelper::EmitInner() to exclude a potentially-redundant line for the module's .h file, for the case when the caller has included the base filename in the 'AlreadyIncluded' set. - Modified FEmitterLocalContext::FindGloballyMappedObject() to limit the 'TryUsedAssetsList' path to UClass conversions only (since that requires a UDynamicClass target to work). - Modified FGatherConvertedClassDependencies::DependenciesForHeader() to only include BPGC fields if they are also being converted. Eliminates an issue with missing header files in generated code. Change 3424359 on 2017/05/04 by Ben.Zeigler Fix issue where StreamableManager would break when requesting an async load that failed the first time. Because our game supports downloading assets during gameplay it's not safe to assume it will never load again. Port of CL #3424159 Change 3424367 on 2017/05/04 by Ben.Zeigler Fix some asset manager warnings to not go off in invalid cases Change 3425270 on 2017/05/05 by Marc.Audy Pack booleans/enums in UEdGraphNode and FOptionalPinFromProperty #rnx Change 3425696 on 2017/05/05 by Ben.Zeigler #jira UE-44672 Fix it so select node option pins get populated with default values properly #jira UE-43927 Fix it so select node opion pin type is correctly maintained accross node recreation, as opposed to deriving from the attached pins #jira UE-44675 Fix it to correctly refresh select node when switching from bool to integer index Change 3425833 on 2017/05/05 by Ben.Zeigler #jira UE-31749 Fix it so Undo works properly when modifying a local variable #jira UE-44736 Fix it so changing the type of a local variable correctly resets the default value Change 3425890 on 2017/05/05 by Marc.Audy Fix Copy/Paste of child actor components losing the template #jira UE-44566 Change 3425947 on 2017/05/05 by Ben.Zeigler This was meant to be part of last checkin Change 3425959 on 2017/05/05 by Ben.Zeigler #jira UE-44692 Fix it so only the sequentially last node can be removed from a Switch On Int, and for Switch On Name stop it from removing an exec pin if it's the only non-default one Change 3425979 on 2017/05/05 by Dan.Oconnor PVS fix Change 3425985 on 2017/05/05 by Phillip.Kavan Fix an uninitialized variable. #rnx Change 3426043 on 2017/05/05 by Ben.Zeigler #jira UE-35583 Correctly refresh array node UI when connecting pins that change it away from wildcard Change 3426174 on 2017/05/05 by Zak.Middleton #ue4 - Avoid call to virtual getSimulationFilterData() to only use it when needed in PreFilter if we actually have items in the IgnoreComponents list (which is rare). The sim filter data 'word2' stores the component ID. Change 3426621 on 2017/05/05 by Phillip.Kavan #jira UE-44708 - Fix an issue that re-introduced component data loss in a non-nativized child Blueprint class with a nativized parent Blueprint class. Change summary: - Removed an unnecessary additional check I had for the presence of "-NativizeAssets" switch on the command line in UBlueprint::BeginCacheForCookedPlatformData(). This check was failing because the usage was recently changed to include an optional value. It was not needed anyway so I just removed it. #rnx Change 3426906 on 2017/05/05 by Ben.Zeigler #jira UE-11189 Fix function/macro input default values to show as a pin customization instead of as a broken text box that doesn't work correctly for most types. This fixes enums and provide validation for other types Types that don't have a customization (most structs) will now show any more, they did not work before either #jira UE-21754 Hide function default values if pass by reference is set Fix it so changing input parameter will also reset default value, to avoid having the wrong type value set and to work the same as local variables Change 3426941 on 2017/05/05 by Dan.Oconnor Fix determinstic cooking of LoadAssetClass nodes in macros Change 3427021 on 2017/05/05 by Dan.Oconnor Build fix, make initialization order in source match artifact #rnx Change 3427135 on 2017/05/05 by Phillip.Kavan #jira UE-44702 - Restore code-based interface classes to Blueprint editor UI. Change summary: - Partially backed out CL# 3348513 to return to previous behavior for 4.16. The UI is no longer filtering on the __is_abstract() type trait for interface classes. - Modified FNativeClassHeaderGenerator::ExportClassFromSourceFileInner() to emit the _getUObject() declaration for native interface types as a default implementation that returns NULL rather than as a pure virtual declaration. #rnx Change 3427144 on 2017/05/06 by Marc.Audy Fix init order #rnx Change 3427146 on 2017/05/06 by Marc.Audy remove stray semicolon #rnx Change 3427242 on 2017/05/06 by Phillip.Kavan #jira UE-44744 - Fix a regression in which a UMG Widget Blueprint property not explicitly marked as a variable would cause Blueprint nativization to fail at package time. Change summary: - Modified FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() to only add 'Category' metadata when we set the 'CPF_BlueprintVisible' flag on the UProperty, which in is now tied to whether or not the property has been explcitly marked as a variable. This avoids a UHT warning when compiling the nativized codegen that would cause packaging to fail. #rnx Change 3427720 on 2017/05/08 by Dan.Oconnor Backing out 3419202 #rnx Change 3427725 on 2017/05/08 by Dan.Oconnor SA fix #rnx Change 3427734 on 2017/05/08 by Dan.Oconnor More exhaustive GEditor null checks, to appease SA #rnx Change 3427882 on 2017/05/08 by Marc.Audy Properly order all booleans in intialization #rnx Change 3428049 on 2017/05/08 by Marc.Audy Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3427804 #rnx Change 3428523 on 2017/05/08 by Ben.Zeigler #jira UE-44781 Refresh function input UI when blueprint graph refreshes, needed as pins may have gone away Change 3428563 on 2017/05/08 by Ben.Zeigler #jira UE-44783 If setting a hard reference pin type from a string, load the referenced object. Change 3428595 on 2017/05/08 by Dan.Oconnor Avoid node reconstruction when we're compiling a blueprint with no linker (e.g., a duplicated blueprint) #jira UE-44777 Change 3428599 on 2017/05/08 by Ben.Zeigler #jira UE-44789 Fix string asset renamer to not mark IsPersistent becuase that crashes in lightmap code, change it so the path fixup doesn't require the persistent flag Change 3428609 on 2017/05/08 by Dan.Oconnor Improved fix for UE-44777 #jira UE-44777 #rnx Change 3429176 on 2017/05/08 by Phillip.Kavan #jira UE-44755 - Fix nativization build errors when packaging a game project that is not IWYU-compliant for a build target that disables PCH files. - Mirrored from //UE4/Release-4.16 (CL# 3429030). #rnx Change 3429198 on 2017/05/08 by Phillip.Kavan CIS fix. #rnx Change 3429583 on 2017/05/08 by Ben.Zeigler Fix SGraphPinClass to work properly after my changes to allow unloaded assets. For Class pins we need to store separate Runtime and Editor asset data objects, as one has _C and refers to the class, and the other doesn't and refers to the blueprint. The content browser wants the editor path, the pin defaults want the runtime path. Change default value widgets to look more like properties widgets by forcing them to act as highlighted and disabling black background Change 3429640 on 2017/05/08 by Marc.Audy Fix issues with select nodes in macros connected to wildcard pins. #jira UE-44799 #rnx Change 3429890 on 2017/05/08 by Ben.Zeigler Fix function/macro defaults to properly propagate when changed using the new edit UI Refactor some code out of the details customization into the k2 schema Disable defaults UI for object/class/interface hard references as it is disabled in KismetCompiler Change 3429947 on 2017/05/08 by Michael.Noland Core: Backing out CL# 3394352 (marking FDateTime and FTimespan nonexport member Tick with UPROPERTY()), which will re-break UE-39921 but fix UE-44418 There appears to be a more serious underlying issue with how the CDO is instanced which needs to be addressed #jira UE-44418 #reimplementing 3411681 from Release 4.16 Change 3429987 on 2017/05/08 by Ben.Zeigler #jira UE-44798 Do a better job of validating object paths saved as default values, due to an old bug with local variables some object paths are saved as struct exportext At load time clear invalid default value for local variables Add IsValidObjectPath to FPackageName that validates the passed in path would be valid to load with LoadObject Change 3430392 on 2017/05/09 by Marc.Audy Fix SA CIS error #rnx Change 3430747 on 2017/05/09 by Ben.Zeigler #jira UE-44836 Don't reconstruct node during callback for param value changing, this can happen during a reconstruction and recursive reconstruction is unsafe Don't call ModifyUserDefinedPinDefaultValue unless the default value has actually changed Change 3431027 on 2017/05/09 by Marc.Audy Fix BPRW mark up causing Ocean warnings #rnx Change 3431353 on 2017/05/09 by Marc.Audy Fix UHT error due to exposing FJsonObjectWrapper to blueprints #rnx [CL 3431398 by Marc Audy in Main branch]
2017-05-09 17:15:32 -04:00
UFUNCTION(BlueprintCallable, Category = "AI|Perception", meta = (WorldContext="WorldContextObject"))
static bool RegisterPerceptionStimuliSource(UObject* WorldContextObject, TSubclassOf<UAISense> Sense, AActor* Target);
FAISenseID RegisterSenseClass(TSubclassOf<UAISense> SenseClass);
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3431384) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3252833 on 2017/01/10 by Ori.Cohen Refactor constraint so that it can be used for external solvers. (Copying //Tasks/UE4/Dev-ImmediateModePhysics to Dev-Framework (//UE4/Dev-Framework)) Change 3256288 on 2017/01/12 by Ori.Cohen Undo constraint refactor as we found a way around it and it made the code much harder to read/debug Change 3373195 on 2017/03/30 by Mike.Beach For nativization, changing it so we key off of the target platform-info struct instead of the platform (in preparation for defining the nativized plugin's platform whitelist). Change 3381178 on 2017/04/05 by Dan.Oconnor Make sure we don't inherit the NATIVE func flag when generating skeleton functions, also make sure all bojects outer'd to the skeleton class are marked transient #jira UE-43616 Change 3381532 on 2017/04/05 by Marc.Audy (4.16) Fix various cases where built lighting on child actors could be lost when loading a level #jira UE-43553 Change 3381586 on 2017/04/05 by Mike.Beach Now generating TArrayCaster conversions for nativized UClass arrays that need it (to handle different TSubclassOf arrays). #jira UE-42676, UE-43257 Change 3381682 on 2017/04/05 by mason.seay Some more changes to test map Change 3381844 on 2017/04/05 by Dan.Oconnor Match existing logic for CPF_ReturnParm/CPF_OutParm. Fixes compilation error in BP_TurbineBlades when using compilation manager Change 3382054 on 2017/04/05 by Zak.Middleton #ue4 - Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #jira UE-30998 Change 3382703 on 2017/04/06 by Lukasz.Furman fixed missing links between navmesh polys when there are more than 4 neighbor connections #jira UE-43524 Change 3383357 on 2017/04/06 by Marc.Audy (4.16) Make SetHiddenInGame propagate consistently with SetVisibility #jira UE-43709 Change 3383359 on 2017/04/06 by Dan.Oconnor Fix last errant SKEL reference when cooking Odin Change 3383591 on 2017/04/06 by Mike.Beach Prevent users from setting object variables as 'config' properties (disallowed by UHT). This prevents some errors that could happen later when users nativize the Blueprint. #jira UE-42085 Change 3384762 on 2017/04/07 by Zak.Middleton #ue4 - Fix SpringArmComponent not restoring relative transform when bUsePawnControlRotation is turned off. Fixes the editor interaction ignoring transform of the component in the viewport after bUsePawnControlRotation is toggled on then off, since by then the world transform had been overwritten (from tick in editor) and nothing would drive transform changes from the editable value. Toggling bUsePawnControlRotation off at runtime now restores the rotation to the initial relative rotation, not stomping it with the current pawn rotation, allowing toggling between the editable/desired base rotation and the control rotation. #jira UE-24850 Change 3384948 on 2017/04/07 by Dan.Oconnor Prevent GForceDisableBlueprintCompileOnLoad from causing all sorts of badness when dependencies are loaded as part of a Diff operation. Instead of setting a global flag we flag the package as LOAD_DisableCompileOnLoad Change 3385267 on 2017/04/07 by Michael.Noland Graph Editing: Pushed some node diffing code down from UAIGraphNode into UEdGraphNode so nodes with details panel properties will diff correctly (e.g., various animation nodes and BP switch nodes) #jira UE-21724 Change 3385473 on 2017/04/07 by Phillip.Kavan #jira UE-43067 - Fix broken pin wires after an Expand Node operation, along with some misc. cleanup. Change summary: - Fixed to use correct string for "Expand Node" transaction name. - Modified FBlueprintEditor::OnExpandNodes() to consolidate some redundant code. - Fixed to generate a unique node GUID for cases where the source graph is not removed after expansion. Change 3385583 on 2017/04/07 by Dan.Oconnor Handle CreatePropertyOnScope nullptr return values (happens for structs missing a struct property) #jira UE-43746 Change 3386581 on 2017/04/10 by Michael.Noland Blueprints: Further hardening FBlueprintActionInfo::GetOwnerClass() #jira UE-43824 Change 3386615 on 2017/04/10 by Marc.Audy Instanced properties can now properly be set on a per-instance basis in blueprint added components. #jira UE-42066 Change 3387000 on 2017/04/10 by Marc.Audy Fix includes for CIS Change 3387229 on 2017/04/10 by mason.seay More changes to TM-Gameplay Added Save Game test (with blueprint) Tick Interval test (with blueprint) BP logic cleanup Level organization Change 3388437 on 2017/04/11 by Mike.Beach Adding support for map/set literals in the backend (so you can use set nodes for structs containing sets/maps, without having to connect a RHS input - resets to struct defaults). #jira UE-42617 Change 3388532 on 2017/04/11 by mason.seay Submitting latest changes for crash repro Change 3389026 on 2017/04/11 by Ben.Zeigler Performance and bug fixes for incremetal cooking with asset registry, duplicate of several changes made on //Fortnite/Main Fix it so AssetRegistry.ScanPathsAndFilesSynchronous won't scan subdirectories inside already scanned directories, this cuts down on the number of cache files Fix 2 second stall when shutting down AssetSourceFilenameCache if it had never been previously created Change 3389163 on 2017/04/11 by Ben.Zeigler #jira UE-42922 Fix it so connecting function input node output pins does not clear default value, we only want to clear the value when connecting an input pin. Properly testing this fix depends on UE-43883 Change 3389205 on 2017/04/11 by Marc.Audy Protect against a handful of GEditor usages that can now be hit in standalone Change 3389220 on 2017/04/11 by Marc.Audy Don't borrow ClassWithin to masquerade as ParentClass during compilation and instead just set the super struct immediately Change 3389222 on 2017/04/11 by Michael.Noland Framework: Adding a cvar (t.TickComponentLatentActionsWithTheComponent) to allow users to revert to the old behavior on when component latent actions tick - Non-zero values behave the same way as actors do, ticking pending latent action when the component ticks, instead of later on in the frame (default behavior in 4.16 and beyond) - Prior to 4.16, components behaved as if the value were 0, which meant their latent actions behaved differently to actors This CVar will be removed in a future version, defaulting to on #jira UE-43661 Change 3389276 on 2017/04/11 by Marc.Audy Spelling fix and NULL to nullptr Change 3389303 on 2017/04/11 by Mieszko.Zielinski Made sure AIController::Posses doesn't get called when compiling Pawn BP #UE4 #jira UE-43873 Change 3390215 on 2017/04/12 by mason.seay Removed some tests, will need further review Change 3390638 on 2017/04/12 by Mike.Beach Generalizing the omission of the CoerceProperty (in EmitTerm) - previously we were only omitting properties for our custom array lib. For wildcards, a coerce property should not be used as its type will not match. NOTE: There is a slight behavior change in UEdGraphSchema_K2::ConvertPropertyToPinType(), as it will return 'wildcard' for params marked as 'ArrayTypeDependentParams' (previously would have returned 'int'). #jira UE-42747 Change 3390774 on 2017/04/12 by Ben.Zeigler #jira UE-43911 Fix several issues with saving a runtime asset registry containing redirectors that caused crashes in cook on the fly. Don't resolve redirectors on incoming links because it will make a circular link, and fix an issue where chained redirectors would break the for loop iteration and return a bad dependency Fix it so the asset registry written out at the beginning of CookOnTheFly uses the registry generator, otherwise it will include all of the stripped editor only tags Change 3390778 on 2017/04/12 by Ben.Zeigler Fix UCookOnTheFlyServer::CollectFilesToCook to check for initial unsolicited packages up front. This is required in iterative mode because it may skip cooking all explicit packages and thus miss a new startup loaded package Change 3390782 on 2017/04/12 by Ben.Zeigler Change RunProjectCommand to not imply -nomcp, and allow reading -clientcmdline to override setting the map parameter to 127.0.0.1 by default Fix RunProjectCommand to remove ios-specific checks to not pass weird platform parameters, and instead never pass them Fix PS4Platform to pass along command line when calling build cook run, args needs to be the last parameter so explicitly set -target= Change 3390859 on 2017/04/12 by Mike.Beach T3D class fields now export with the class's fully qualified path name (to avoid abiguity). Since we can have multiple classes with the same name (Blueprints in different folders), we have to use the class's fully qualified object path. #jira UE-28048 Change 3390914 on 2017/04/12 by Lukasz.Furman fixed missing navlink component's transform in exported navigation data #jira UE-43688 Change 3391122 on 2017/04/12 by Ben.Zeigler Add new PreloadPrimaryAssets call to AssetManager that stream the desired assets without modifying the official load/unload state. This is useful if you want to preload things in case the might be used in the future, and it also supports recursion Fix crash calling GetAssetDataForPath with null path Change 3391494 on 2017/04/12 by Dan.Oconnor Fix bad references in deep object (widget) hierarchies #jira UE-43802 Change 3391529 on 2017/04/12 by Dan.Oconnor Fix log spam, accidently submitted #rnx Change 3391756 on 2017/04/12 by Dan.Oconnor LinkExternalDependencies needs to be performed before we RefreshVariables #jira UE-43843 Change 3392542 on 2017/04/13 by Marc.Audy Ensure that initialized actors get cleaned up when removed from world even if that world hasn't begun play. #jira UE-43879 Change 3392746 on 2017/04/13 by Marc.Audy (4.16) When duplicating a blueprint node, correctly make the new node a sibling of the duplicated node, not a child of it (unless duplicating the root component). Also resets scale of a duplicated root component to 1 to avoid a squaring of the scale for that component. #jira UE-40218 #jira UE-42086 Change 3393253 on 2017/04/13 by Dan.Oconnor Make sure calculated meta data is correctly set on functions generated by the compilation manager (SKEL_ class functions) #jira UE-43883 Change 3393509 on 2017/04/13 by Mike.Beach Removing hack'ish ResetLoaders() call that was causing undesired side-effects (resetting of a loaded package that other objects were relying on). This was originally intended to release file handles so separate editor processes could make updates and save the file (from CL 1712376). Using ResetLoaders() for this is bad though, as it has too many side effects. Instead we have to wait for GC to run. This also makes sure that GC should run as intended as the CookOnTheFly sever is idling. #jira UE-37284 Change 3394350 on 2017/04/14 by Michael.Noland Core: Making FDateTime and FTimespan actually reflected, so they get duplicated properly in CopyPropertiesForUnrelatedObjects, etc... #jira UE-39921 Change 3395985 on 2017/04/17 by Phillip.Kavan #jira UE-38280 - Fix invalid custom type selections on member fields in the User-Defined Structure Editor after a reload. Change summary: - Ensure that the 'SubCategoryObject' member in a UDS variable descriptor has been loaded when converting to an FEdGraphPinType. Change 3396152 on 2017/04/17 by Marc.Audy TickableGameObjects that have IsTickableInEditor false should not tick in the editor #jira UE-40421 Change 3396279 on 2017/04/17 by Phillip.Kavan #jira UE-43968 - Fix failed validation of bitmask enum types when serializing bitmask literal nodes. Change 3396299 on 2017/04/17 by Dan.Oconnor Fix resintancing issues exposed by running TM-Gameplay with -game. We cannot reinstance actors in levels on load because the scene is not created. #jira UE-43859 Change 3396712 on 2017/04/17 by Marc.Audy Call PostLoad on subobjects before copying for unrelated properties to avoid cases where an out of date object patched over in the linker has not been brought up to date #jira UE-38234 Change 3396718 on 2017/04/17 by Mike.Beach Adding a search bar to the components tree for Blueprints. #epicfriday #jira UE-17620 Change 3396999 on 2017/04/17 by Mike.Beach In generated code, call event '_Implementation' functions directly for interface functions being invoked on self (avoids a UHT runtime error). #jira UE-44018 Change 3397700 on 2017/04/18 by Marc.Audy UT struct BlueprintType fixups Change 3397701 on 2017/04/18 by Marc.Audy Odin struct BlueprintType fixups Change 3397703 on 2017/04/18 by Marc.Audy Ocean struct BlueprintType fixups Change 3397704 on 2017/04/18 by Marc.Audy WEX struct BlueprintType fixups Change 3397705 on 2017/04/18 by Marc.Audy Additional UT blueprint type struct fixups Change 3397706 on 2017/04/18 by Marc.Audy Fortnite struct BlueprintType fixups Change 3397708 on 2017/04/18 by Marc.Audy Fixup Engine BlueprintType markup of structs Change 3397709 on 2017/04/18 by Marc.Audy Sample Game struct BlueprintType fixups Change 3397711 on 2017/04/18 by Marc.Audy Mark AnimNodes as BlueprintType and BlueprintInternalUseOnly Change 3397712 on 2017/04/18 by Marc.Audy Paragon struct BlueprintType fixups Change 3397735 on 2017/04/18 by Marc.Audy Definition pieces of BlueprintInternalUseOnly to fix UHT errors with structs already marked to use it Change 3397912 on 2017/04/18 by Mike.Beach Fix for CIS warnings about shadowed variables (fallout from CL 3396718). Change 3398455 on 2017/04/18 by Marc.Audy Make less critical errors log an error rather than immediately throwing allowing multiple errors to be reported in the same compile Change 3398491 on 2017/04/18 by Marc.Audy BPRW/BPRO in a non-BlueprintType is now a UHT error Change 3398539 on 2017/04/18 by Marc.Audy Fixup live link struct markups Change 3399412 on 2017/04/19 by Marc.Audy Fix Match3 blueprint type struct markups Change 3399509 on 2017/04/19 by Phillip.Kavan #jira UE-38574 - Fix AnimBlueprint function graphs marked as 'const' to treat 'self' as read-only when compiling. Change summary: - Modified FKismetCompilerContext::ProcessOneFunctionGraph() to use the function graph schema rather than the compiler context schema for both the function context's schema as well as testing the function for 'const'-ness. For AnimBPs, the compiler context and the function graph context can differ, so we need to make sure we are using the right one when making queries for a specific function context during compilation. - Minor cleanup: changed the function context schema to be 'const' in order to be consistent with the function graph GetSchema() API's result. Added a few 'const' qualifiers where needed to match. - Added a new object version in order to avoid breaking compilation of existing AnimBP function graphs that may already be violating the 'const' rule (this is the same thing that was done when 'const' was first added to "normal" BP function graphs). Just as with normal function graphs in place before the addition, a warning will be generated for existing AnimBP function graphs if they violate 'const' correctness, and an error will be generated for all new ones. Change 3399749 on 2017/04/19 by Mike.Beach Hiding the Nativized Blueprints plugin from the in-editor browser (prevent users from disabling it). Change 3399774 on 2017/04/19 by Marc.Audy ConditionalPostLoad is already called on StaticMesh earlier in the function #rnx Change 3400313 on 2017/04/19 by Mike.Beach Mirroring CL 3398673 from 4.16 Now, with ICWYU, making sure that the coresponding header gets included first in nativized Blueprint files (else we get a UHT error). Had to fixup some ShooterGame specific files as a result (they had missing includes and forward declarations). #jira UE-44124 Change 3400328 on 2017/04/19 by Mike.Beach Missing file from mirrored change (CL 3400313 - mirroring CL 3398673 from 4.16) #jira UE-44124 Change 3400415 on 2017/04/19 by Chad.Garyet adding physx switch build to framework Change 3400514 on 2017/04/19 by Mike.Beach Back out changelist 3400313 / 3400328 (mirrored from CL 3398673 in 4.16), as it was producing "include PCH first" errors. Likely, CL 3398673 was a fix for a 4.16 specific change, altering the expected include order. We'll have to wait for this one to be integrated back. Change 3400552 on 2017/04/19 by Marc.Audy Undo the calling of post load prior to the CPFUO as dependent objects may not yet be loaded. Instead copy the need load flag to the new CDO subobject, similarly to how the top level CDO object copies its flags over. #jira UE-44150 Change 3400815 on 2017/04/19 by Marc.Audy Spelling fix (part of PR #3490) #rnx Change 3400918 on 2017/04/19 by Marc.Audy Partial pull of PR #3490: Improved remapping game controls support (Contributed by projectgheist) This portion brings in the exposure of the bindings to blueprint #jira UE-44122 Change 3401550 on 2017/04/20 by Marc.Audy fix kitedemo blueprint type markup #rnx Change 3401702 on 2017/04/20 by Mike.Beach Make it so plugins added to a project through the .uproject's 'AdditionalPluginDirectories' list get folded into the generated code project (for visual studio, etc.). Change 3401720 on 2017/04/20 by Mike.Beach Add white and black lists for target type (game, client, server, etc.) to plugin module descriptors. Change 3401725 on 2017/04/20 by Mike.Beach Whitelisting the nativized Blueprint plugin for only the targets it was built for (game, server, or client). Change 3401800 on 2017/04/20 by Ben.Zeigler Add Algo::BinarySearch, LowerBound, and UpperBound. These are setup to allow binary searching a presorted array, and allow for specifying projection and sort predicates. Convert some engine code to use it Add TSortedMap, which is a map data structure that has the same API as TMap, but is backed by a sorted array. It uses half the memory and performance is faster below n=10 Add FName::CompareIndexes so a SortedMap with FNames can be used without doing very slow string compares, and FNameSortIndexes predicate to sort by it Add code to Algo and Container tests. Split up container tests so the new ones aren't run in smoketest as they are a bit slow Add RemoveCurrent and SetToEnd to ArrayIterator Change 3401849 on 2017/04/20 by Marc.Audy Partial pull of PR #3490: Improved remapping game controls support (Contributed by projectgheist) This portion brings bug fixes and improvements to InputKeySelector UMG widgets. #jira UE-44122 Change 3402088 on 2017/04/20 by Marc.Audy Focus the search box when expanding the map value type #jira UE-44211 Change 3402251 on 2017/04/20 by Ben.Zeigler Fix issue where SortedMap needs to be resorted after serialization, because the sorting may have changed from when it was saved out Change 3402335 on 2017/04/20 by Ben.Zeigler Significant changes to FAssetData serialization and memory, cuts memory significantly but will break code that was using some of the internal API that was not properly hidden before Both Editor and Runtime cache now use the same FAssetRegistryVersion, which is now registered as a custom version Rename FAssetData and FAssetPackage operator<< to SerializeForCache to make it clear that it isn't safe to use for general serialization Remove GroupNames from FAssetData, it has not been useful since the UE4 package structure changed around 4.0 Rename generic-sounding but not actually generic SharedMapView class to AssetDataTagMapSharedView to indicate what it is actually used for Change TagsAndValues to use a new array-backed TSortedMap as the base structure instead of a hash map. Also, it only allocates the map on demand, which saves significant memory at runtime as many packages have no tags Add bFilterAssetDataWithNoTags to [AssetRegistry] ini section, if set it will only save cooked asset data if it has tags, off by default but saves significant memory if your whitelist is set up properly Fix issue where asset registry tags updated by loading assets during cook were not being reflected in the cooked registry Add AssetRegistry::GetAllocatedSize and add to MemReport output Change 3402457 on 2017/04/20 by Ben.Zeigler Enable asset registry iteration and stripping unused asset data in Fortnite. Registry iteration is already on in //Fortnite/Main, stripping is a new feature I want to test Change 3402498 on 2017/04/20 by Ben.Zeigler CIS fix. Why did this compile locally? Change 3402537 on 2017/04/20 by Ben.Zeigler Remove ensure for making AssetData for subobjects, the editor does this for thumbnail creation in some cases Change 3402600 on 2017/04/20 by Ben.Zeigler Add bShouldGuessTypeAndNameInEditor to manager settings, can be set false for games where type cannot be safely implied and content must be resaved Fix up some bool setting code inside asset manager, and fix const correctness and for iterator issues AssetManager can now discover any BlueprintCore type when bHasBlueprintClasses=true Add AssetManager.DumpAssetRegistryInfo to output detailed asset registry usage stats Add Primary Name to asset audit window by default Change 3403556 on 2017/04/21 by Marc.Audy Fix Orion input key selector override class #rnx Change 3404090 on 2017/04/21 by mason.seay Applying Forcefeedback to test map Change 3404093 on 2017/04/21 by mason.seay Changing text in level Change 3404139 on 2017/04/21 by mason.seay Added Force Feedback test and made some tweaks. Change 3404146 on 2017/04/21 by mason.seay Added source reference to Instanced Variable test Change 3404154 on 2017/04/21 by mason.seay More minor tweaks Change 3404155 on 2017/04/21 by Marc.Audy Remove auto #rnx Change 3404188 on 2017/04/21 by Marc.Audy Fixed crash changing variable type when any type other than map #jira UE-44249 #rnx Change 3404463 on 2017/04/21 by Ben.Zeigler Fix asset data code to not ensure when loading an object with invalid exports, and instead print warning with name of package that needs to be resaved Resave a map that had a redirector from a DIFFERENT package saved in it's exports. I do not understand how this happened, but it appears to be related to the lightmap BuiltData transition when old maps are opened Change 3404465 on 2017/04/21 by Ben.Zeigler Fix issue with trying to load editor-only asset classes in a cooked build Fix issues with renaming or changing template Ids of assets from the editor Always print the Duplicate Asset ID error, as if you have more than one the ensuremsg only goes off once Change 3404481 on 2017/04/21 by Dan.Oconnor Remove unneeded walk up hierarchy - prevent stale entries in action database if we compile a BP but don't compile its children Change 3404510 on 2017/04/21 by Phillip.Kavan #jira UE-35727 - Collapsed graphs containing a local variable node will no longer cause a compile error when the parent graph is renamed. Change 3404590 on 2017/04/21 by Michael.Noland Editor: Fixed incorrect filtering of abstract/deprecated UDeveloperSettings and UContentBrowserFrontEndFilterExtension classes caused by a typo (HasAnyCastFlags versus HasAnyClassFlags) Change 3404593 on 2017/04/21 by Marc.Audy Fixed another crash to do with input pin secondary combo box #jira UE-44269 #rnx Change 3404600 on 2017/04/21 by Michael.Noland Core: Allow UE_GC_TRACK_OBJ_AVAILABLE to be set externally #rnx Change 3404602 on 2017/04/21 by Michael.Noland Engine: Switched from an include to a forward declaration of SWidget in UDeveloperSettings to keep it slim #rnx Change 3404608 on 2017/04/21 by Michael.Noland Core: Marked TNumericLimits as constexpr so they can be used in static asserts Change 3404659 on 2017/04/21 by Michael.Noland Engine: Adding includes back to two UDeveloperSettings subclasses Change 3405289 on 2017/04/24 by Marc.Audy Remove auto #rnx Change 3405446 on 2017/04/24 by Marc.Audy Fix Win32 unsigned compile issue Change 3405512 on 2017/04/24 by Mike.Beach Piping through NativizationOptions to filename generation (so we're able to gen different files names per target: client vs. server). Change 3406080 on 2017/04/24 by Ben.Zeigler Deprecate UEngine::OnPostEngineInit and move to FCoreDelegates, clean up comments for the initialization delegates Call OnPostEngineInit from commandlet initialization as well as normal execution. I thought about making a wrapper function, but the commandlet calls EditorInit directly so it wouldn't work Bind delegate to refresh the AssetRegistry native class hierarchy after engine init so it picks up game/plugin classes. Undo ini change that was required to hack around this Change 3406381 on 2017/04/24 by Ben.Zeigler #jira UE-23768 Enable Run Physics With No Controller for montage test pawn. The montage pawn has no controller so wasn't correctly running physics when the root motion stopped. This flag needs to be set to allow it to correctly stop after the montage is over Change 3406438 on 2017/04/24 by Ben.Zeigler Fix deprecation warning Change 3406519 on 2017/04/24 by Phillip.Kavan #jira UE-43612 - Suppress array "Get" node fixup notifications on load when the BP Compilation Manager is enabled. Change summary: - Wrapped BPCM calls to FBlueprintEditorUtils::ReconstructAllNodes() and ReplaceDeprecatedNodes() duirng compile-on-load with bIsRegeneratingOnLoad = true. This matches the BP's state during compile-on-load when the BPCM is not enabled. Change 3406565 on 2017/04/24 by Dan.Oconnor Make sure all interface functions are added to skeleton #jira UE-44152 Change 3407489 on 2017/04/25 by Ben.Zeigler #jira UE-44317 Fix game-only TickableGameObjects to correctly tick in PIE Change 3407558 on 2017/04/25 by Ben.Zeigler Fix Fortnite cook warnings, issue had to do with the CDO being registered as a Primary Asset in conflict with the Class being registered Fix issue with renaming a BP primary asset not finding the old name Change 3407701 on 2017/04/25 by Dan.Oconnor Remove unneeded null check, static analysis doen't like the inconsistency Change 3407995 on 2017/04/25 by Marc.Audy Fixed maps and sets not working correctly with split pin. #jira UE-43857 Change 3408124 on 2017/04/25 by Ben.Zeigler #jira UE-39586 Change it so the blueprint String/Name/Object to Text node creates culture invariant text, and also have them show as an expanded node with a comment explaining this Fix Transform to actually return in the format specified in the comment, and fix comments on many text conversions Change 3408134 on 2017/04/25 by Marc.Audy Graph pin container type now represented by an enumeration (EPinContainerType) rather than 3 "independent" booleans. FEdGraphPinType constructor, UEdGraphNode::CreatePin, and FKismetCompilerContext::SpawnInternalVariable that took 3 booleans deprecated and replaced with a version that takes EPinContainerType. UEdGraphNode::CreatePin parameters reorganized so that PinName is before ContainerType and bIsReference, which default to None and false respectively Change 3408256 on 2017/04/25 by Michael.Noland Core: Changed UClass::ClassFlags to be of type EClassFlags for improved type safety Change 3408282 on 2017/04/25 by Marc.Audy (4.16) Fix incorrect positioning of instance components after duplication #jira UE-44314 Change 3408404 on 2017/04/25 by Mike.Beach Adding and removing the nativized plugin to/from the project when we alter the packaging nativization setting (so it gets picked up by project generation). Change 3408445 on 2017/04/25 by Marc.Audy Fix up missed deprecation cases #rnx Change 3409354 on 2017/04/26 by Marc.Audy Fix Linux CIS failure #rnx Change 3409487 on 2017/04/26 by Marc.Audy When dragging assets in to the SCS create them as siblings, not nested #jira UE-43041 Change 3409776 on 2017/04/26 by Ben.Zeigler #jira UE-44401 Fix issue with cooking a map containing a reparented component. In that case the child component may think it's not editor only, but it's archetype is editor only. This is not allowed in EDL, so now the child is marked as editor only as well Change 3410168 on 2017/04/26 by Dan.Oconnor Avoid calling virtual functions in the middle of compile #jira UE-44243 Change 3410252 on 2017/04/26 by Lukasz.Furman adjusted WITH_GAMEPLAY_DEBUGGER checks after IWYU changes #ue4 Change 3410385 on 2017/04/26 by Marc.Audy ChildActorComponent SetClass no longer fails when setting at runtime. #jira UE-43356 Change 3410466 on 2017/04/26 by Michael.Noland Core: Ensuring EClassFlags is 32 bit in a different way (underlying type of the enum is coming out signed even though all members are unsigned, long term fix is probably to move it to an enum class) #rnx Change 3410476 on 2017/04/26 by Michael.Noland Automation: Deleting some commented out methods #rnx Change 3411070 on 2017/04/27 by Marc.Audy Properly complete deprecation of old attachment API Change 3411338 on 2017/04/27 by mason.seay Map for Latent Action Tick Bug Change 3411637 on 2017/04/27 by Ben.Zeigler Back out CL #3381532 as it was causing crashes when adding new variables to blueprints, as the transaction array was being recursively modified while it was being added to Change 3412052 on 2017/04/27 by mason.seay Updated jump test map and pawn Change 3412231 on 2017/04/27 by Ben.Zeigler Fix issue where running SearchAllAssets multiple times after mounting new paths would throw away the asset registry cache, which slowed down incremental cooking substantially because the cooker mounts the autosave folder Duplicate of CL #3411860 Change 3412233 on 2017/04/27 by Ben.Zeigler Made FStreamableHandle::GetLoadedCount much faster by taking advantage of existing progress counter Duplicate of CL #3411778 Change 3412235 on 2017/04/27 by Ben.Zeigler Add code to FStringAssetReferenceThreadContext and FStringAssetReferenceSerializationScope which allows setting package name and collect options for string asset references serialized via something other than linker load Make RedirectCollector threadsafe to avoid issues with async loading asset references Fix it so ProcessStringAssetReferencePackageList will remove entries from the string asset array like resolve did, and rename function to indicate that Fix it so string asset references created by asset labels do not automatically get cooked, and significantly improve the speed of labels with lots of assets Add code to cooker and asset manager to explicitly mark non-cookable assets as NeverVook, this stops labels from ending up in the build if set that way Added option to not recurse package dependency changes more than one level when hashes change. This ended up not being significantly faster in a realistic case so left disabled Duplicate of CL #3412080 Change 3412352 on 2017/04/27 by Marc.Audy Refix lighting getting wrong position when getting component instance data Change 3412426 on 2017/04/27 by Marc.Audy Take first steps to making ComponentToWorld private and force use of accessor Make bWorldToComponentUpdated private Make ComponentToWorld and bWorldToComponentUpdated mutable Add a SetComponentToWorld function for the (likely ill-advised) places that were setting it directly. Change 3412468 on 2017/04/27 by Marc.Audy Remove last remnants of deprecated (4.11) custom location system Change 3413398 on 2017/04/28 by Marc.Audy Fix up missed deprecated attachment API uses Change 3413403 on 2017/04/28 by Marc.Audy Fix Orion compile error #rnx Change 3413448 on 2017/04/28 by Marc.Audy Fix up kite demo component to world privataization warnings #rnx Change 3413792 on 2017/04/28 by Ben.Zeigler Fix many bugs with blueprint pin default values, and add "Reset to Default Value" option to pin context menu Deprecate and rename SetPinDefaultValue because it actually sets the Autogenerated default. This was being called in bad places and destroying the stored autogenerated defaults #jira UE-40101 Fix expose on spawn pins to correctly update when the spawned object's defaults change #jira UE-21642 Fix struct pin default values to properly update when the struct is changed #jira UE-39418 Fix changed function/macro default values to properly update in already placed call nodes Change 3413839 on 2017/04/28 by samuel.proctor Added some Blueprint focused tests for TM-Gameplay Change 3414030 on 2017/04/28 by Ben.Zeigler Enable use of AssetPtr variables with Config, for native and blueprint This incorporates CL #3302487 but also enables for blueprint usage as that code is new to framework branch Change 3414229 on 2017/04/28 by Marc.Audy Fixup virtuals not calling their Super Remove some autos #rnx Change 3414451 on 2017/04/28 by Lukasz.Furman static analysis fix for gameplay debugger Change 3414482 on 2017/04/28 by Ben.Zeigler Fix crash found where changing pin type on ConvertAsset accessed an array while deleting it Change 3414609 on 2017/04/28 by Ben.Zeigler #jira UE-18146 Refresh graph when disconnecting a resolve asset id node Change 3415852 on 2017/05/01 by Marc.Audy Remove unused code #rnx Change 3415856 on 2017/05/01 by Marc.Audy auto removal #rnx Change 3415858 on 2017/05/01 by Marc.Audy Fix function taking an input as reference when unneeded and causing (still unclear why it suddenly started showing up) error in cooking #rnx Change 3415946 on 2017/05/01 by Marc.Audy Have K2Node_StructOperation skip the K2Node_Variable validation as it doesn't need a property (per CL# 1756451) #rnx Change 3415988 on 2017/05/01 by Lukasz.Furman renamed WorldContext param in AI related static blueprint functions to remove load/cook warnings #jira UE-44544 Change 3416030 on 2017/05/01 by Ben.Zeigler Fix issue with WorldContext pins being broken by my pin value refactor, partial paths like "WorldContext" need to be stored as strings and not as broken object references. Change 3416230 on 2017/05/01 by Marc.Audy Fix spelling error #rnx Change 3416419 on 2017/05/01 by Phillip.Kavan #jira UE-44213 - Nativizing a Blueprint class with a non-nativized Blueprint class subobject dependency will no longer lead to a crash at load time. Change summary: - Modified the FFakeImportTableHelper ctor to inject subobject CDOs into the 'SerializeBeforeCreateCDODependencies' array. This in turn ensures that EDL will serialize those subobject CDOs (if necessary) before we create the subobject's nativized owner's CDO at load time. - Modified FEmitDefaultValueHelper::GenerateCustomDynamicClassInitialization() to emit MiscConvertedSubobject instantiations AFTER we emit the FillUsedAssetsInDynamicClass() call. This is now consistent with the code emitted for other subobjects (all of which assumes that the UsedAssets array has been initialized). - Modified FFindAssetsToInclude::HandleObjectReference() to add UField owner CDOs in addition to the owner class to the asset dependency list. This ensures that owner CDOs will be emitted alongside the class to both the nativized asset dependency table as well as to the fake import table associated with the UDynamicClass linker for the nativized BP asset. Change 3416425 on 2017/05/01 by Phillip.Kavan #jira UE-44219 - Nativizing a Blueprint class with a nativized DOBP class dependency will no longer lead to a compile error at cook/nativization time. - Modified the FGatherConvertedClassDependencies ctor to properly handle DOBPs in exclusive mode that have been explicitly enabled for nativization. Previously, this code wasn't taking that possibility into account, and as a result could lead to a missing header file in a dependent nativized class body's include set. - Modified FGatherConvertedClassDependencies::GetFirstNativeOrConvertedClass() to remove the 'bExcludeBPDataOnly' parameter, as it was primarily just being used for a redundant exclusion check when called from the FGatherConvertedClassDependencies ctor. That call site has now been modified to start searching from the super class instead. Additionally, any DOBPs will already fail the preceding WillClassBeConverted() check if they have not been explicitly enabled for nativization in exclusive mode, and will always fail if nativizing in inclusive mode. The extra check was breaking the explicitly-enabled case, so it was removed to allow explicitly-enabled DOBPs to pass. Notes: - Allowing for explicitly-enabled DOBPs in exclusive mode may be removed in a future change, but since it is currently supported, the changes noted above will at least ensure that the generated code will compile properly for now. Change 3416570 on 2017/05/01 by mason.seay Added UMG test to map. Tweaked force feedback test Change 3416580 on 2017/05/01 by mason.seay Resubmitting sub levels Change 3416597 on 2017/05/01 by Dan.Oconnor Compilation manager iteration, adds machinery for individual blueprint compilation, adds comments, cleans up duplicated code Change 3416636 on 2017/05/01 by Phillip.Kavan #jira UE-44505 - Potential fix for a low-repro crash tied to the Blueprint graph context menu. Change summary: - Switched FBlueprintActionInfo::ActionOwner to be a weak object reference. Change 3416960 on 2017/05/01 by Dan.Oconnor Use compilation manager when clicking the compile button, PIE'ing, etc Change 3417207 on 2017/05/01 by Ben.Zeigler Fix issue with None strings causing default value parsing failures Add SetPinDefaultValueAtConstruction needed by some other changes Change 3417519 on 2017/05/01 by Ben.Zeigler Fix BP compile errors caused by local variables with invalid default values. There's no reason to set autogenerated here because the nodes are transient and invisible in the UI. There is still a problem here, local variables are not getting their default values validated when type is changed, so you end up with an integer that has the default value of a struct. Change 3418659 on 2017/05/02 by Ben.Zeigler #jira UE-44534 Fix it so animation node pins get properly created autogenerated default values that are based on the node struct defaults. This fixes issues when they are reset to other defaults #jira UE-44532 Fix it so connecting an animation asset pin on a node player resets the pin value to the autogenerated default instead of the cached asset. This was causing old unused assets to get unnecessarily cooked Fix it so any animation node with an exposed pin that is an object property will reset that object propery when the pin is exposed. This fixes UE-31015 in a generic way Change the OptionalPinManager to take a Defaults address as well as a current address, to allow setting autogenerated defaults properly Remove Import/ExportKismetDefaultValueToProperty as they were redundant with PropertyValueFromString and were using the wrong pin setting functions, replaced with PropertyValueFromString_Direct and calling the schema pin set functions I need to write some backward compatibility code to fix existing nodes, I'll do that in a later checkin Change 3418700 on 2017/05/02 by Ben.Zeigler Actually fix None object paths for real this time. I did not test sufficiently before Change 3418811 on 2017/05/02 by Ben.Zeigler Fix existing animation blueprint nodes with dead asset references duplicated by pins. This code can be applied independent of the other change to fix specific games Change 3419165 on 2017/05/02 by Dan.Oconnor Add misc. functionality from FKismetEditorUtilities::CompileBlueprint Change 3419202 on 2017/05/02 by Marc.Audy Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3417825 #rnx Change 3419236 on 2017/05/02 by mason.seay Removed OnPressed event from Widget BP Change 3419314 on 2017/05/02 by Marc.Audy Fix bad auto-resolve #rnx Change 3419524 on 2017/05/02 by Marc.Audy PR #3528: Improved Input BP library node display names (Contributed by projectgheist) #jira UE-44587 #rn Improved Input BP library node display names Change 3419570 on 2017/05/02 by Zak.Middleton #ue4 - Fix typo in TFunctionRef comment/example. Change 3419709 on 2017/05/02 by Dan.Oconnor Fix missing category metadata on SkeletonGeneratedClass when using compilation manager Change 3419756 on 2017/05/02 by Dan.Oconnor Remove unintentional verbosity increase Change 3420875 on 2017/05/03 by Marc.Audy Make IsExecPin static Minor optimization to IsMetaPin #rnx Change 3420981 on 2017/05/03 by Marc.Audy Change tagging temporarily until other changes are done so that we don't have warnings in the meantime #rnx Change 3421367 on 2017/05/03 by Marc.Audy Manually introduce changes from CL# 3398673 in 4.16 that failed to make it to Dev-Framework as a result of the integration submitted as CL# 3401725. #rnx Change 3421685 on 2017/05/03 by Ben.Zeigler #jira UE-23001 Convert literal Asset ID/Class ID pins to store path as string instead of as hard object reference. Old pins are fixed on load, after resaving the hard references will go away Refactor the way that FStringAssetReference and FAssetPtr are serialized, it now does the various fixups in FStringAssetReference::SerializePath, which is called from archivers Change it so the asset registry reads in a list of all scanned redirectors and adds them to GRedirectCollector, this means that saving a string asset reference will automatically fix it up to point to the redirector destination Change the default behavior of FAssetPtr serialize on ArchiveUObject to match what most of it's children want, and remove several special case hacks. It now serializes as asset reference when saving/loading, and as object for other cases Deprecate StringAssetReferenceLoaded/StringAssetReferenceSaving delegates, replace with PreSavePath and PostLoadPath on FStringAssetReference Make AssetLongPathname private on FStringAssetReference, it was deprecated in 4.9 Change 3421728 on 2017/05/03 by Phillip.Kavan Mirror CL 3408285 from //UE4/Release-4.16. #jira UE-44124 #rnx Change 3422370 on 2017/05/03 by Dan.Oconnor Mirror 3422359 Implement UBlueprintGeneratedClass::NeedsLoadForEditorGame to match UBlueprint, also tag a class's CDO as NeedsLoadForEditorGame. This prevents us from failing to load a UBlueprint's GeneratedClass when running the editor with -server. #jira UE-44659 Change 3423192 on 2017/05/04 by Ben.Zeigler CIS Fix Change 3423305 on 2017/05/04 by Ben.Zeigler Fix "Missing opening parenthesis" warnings for Vector and Rotator the same way they were fixed for Transform Change 3423358 on 2017/05/04 by Marc.Audy Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3422809 #rnx Change 3423766 on 2017/05/04 by Ben.Zeigler #jira UE-44680 Delete some corrupted redirectors that are no longer in use Change 3423804 on 2017/05/04 by Dan.Oconnor Honor SaveIntermediateCompilerResults when using compilation manager Change 3424010 on 2017/05/04 by Marc.Audy Validate that switch string cases are unique Change 3424011 on 2017/05/04 by Marc.Audy Re-fix switch node default pin not appearing as an exec output Remove unused boolean Change 3424071 on 2017/05/04 by Ben.Zeigler Delete FixupRedirects commandlet, replace with -FixupRedirects/FixupRedirectors option on ResavePackages. This new method is much faster than the old commandlet as it uses the asset registry vs loading all packages, fixing up all redirectors in Fortnite only took about an hour vs 12+ hours the old way Removed some hacky bits in Core that only existed to support FixupRedirects Change it so the AssetRegistry listens to DirectoryWatcher callbacks in commandlets now that commandlets use the asset registry properly. This won't do anything unless you tick directory watcher the way that ResavePackages does Change 3424313 on 2017/05/04 by Dan.Oconnor Address missing property flags on SkeletonGeneratedClass when using compilation manager #jira UE-44705 Change 3424325 on 2017/05/04 by Phillip.Kavan #jira UE-44222 - Move nativized UDS implementation details into its own .cpp file in order to avoid circular dependencies. Change summary: - Modified IKismetCompilerInterface::GenerateCppCodeForStruct() to include an output parameter for CPP source and modified FKismet2CompilerModule to match the updated API. - Modified IBlueprintCompilerCppBackend::GenerateCodeFromStruct() to include an output parameter for CPP source and modified FBlueprintCompilerCppBackendBase to match the updated API. - Modified FBlueprintNativeCodeGenUtils::GenerateCppCode() to adjust the call to GenerateCppCodeForStruct() to include CPP source output. - Modified FGatherConvertedClassDependencies::DependenciesForHeader() to switch UDS property dependencies to be forward declarations rather than includes (for default value init code). - Modified FEmitDefaultValueHelper::GenerateGetDefaultValue() to emit implementation details to the 'Body' container, and adjust the header content to be a declaration only. - Modified FIncludeHeaderHelper::EmitInner() to exclude a potentially-redundant line for the module's .h file, for the case when the caller has included the base filename in the 'AlreadyIncluded' set. - Modified FEmitterLocalContext::FindGloballyMappedObject() to limit the 'TryUsedAssetsList' path to UClass conversions only (since that requires a UDynamicClass target to work). - Modified FGatherConvertedClassDependencies::DependenciesForHeader() to only include BPGC fields if they are also being converted. Eliminates an issue with missing header files in generated code. Change 3424359 on 2017/05/04 by Ben.Zeigler Fix issue where StreamableManager would break when requesting an async load that failed the first time. Because our game supports downloading assets during gameplay it's not safe to assume it will never load again. Port of CL #3424159 Change 3424367 on 2017/05/04 by Ben.Zeigler Fix some asset manager warnings to not go off in invalid cases Change 3425270 on 2017/05/05 by Marc.Audy Pack booleans/enums in UEdGraphNode and FOptionalPinFromProperty #rnx Change 3425696 on 2017/05/05 by Ben.Zeigler #jira UE-44672 Fix it so select node option pins get populated with default values properly #jira UE-43927 Fix it so select node opion pin type is correctly maintained accross node recreation, as opposed to deriving from the attached pins #jira UE-44675 Fix it to correctly refresh select node when switching from bool to integer index Change 3425833 on 2017/05/05 by Ben.Zeigler #jira UE-31749 Fix it so Undo works properly when modifying a local variable #jira UE-44736 Fix it so changing the type of a local variable correctly resets the default value Change 3425890 on 2017/05/05 by Marc.Audy Fix Copy/Paste of child actor components losing the template #jira UE-44566 Change 3425947 on 2017/05/05 by Ben.Zeigler This was meant to be part of last checkin Change 3425959 on 2017/05/05 by Ben.Zeigler #jira UE-44692 Fix it so only the sequentially last node can be removed from a Switch On Int, and for Switch On Name stop it from removing an exec pin if it's the only non-default one Change 3425979 on 2017/05/05 by Dan.Oconnor PVS fix Change 3425985 on 2017/05/05 by Phillip.Kavan Fix an uninitialized variable. #rnx Change 3426043 on 2017/05/05 by Ben.Zeigler #jira UE-35583 Correctly refresh array node UI when connecting pins that change it away from wildcard Change 3426174 on 2017/05/05 by Zak.Middleton #ue4 - Avoid call to virtual getSimulationFilterData() to only use it when needed in PreFilter if we actually have items in the IgnoreComponents list (which is rare). The sim filter data 'word2' stores the component ID. Change 3426621 on 2017/05/05 by Phillip.Kavan #jira UE-44708 - Fix an issue that re-introduced component data loss in a non-nativized child Blueprint class with a nativized parent Blueprint class. Change summary: - Removed an unnecessary additional check I had for the presence of "-NativizeAssets" switch on the command line in UBlueprint::BeginCacheForCookedPlatformData(). This check was failing because the usage was recently changed to include an optional value. It was not needed anyway so I just removed it. #rnx Change 3426906 on 2017/05/05 by Ben.Zeigler #jira UE-11189 Fix function/macro input default values to show as a pin customization instead of as a broken text box that doesn't work correctly for most types. This fixes enums and provide validation for other types Types that don't have a customization (most structs) will now show any more, they did not work before either #jira UE-21754 Hide function default values if pass by reference is set Fix it so changing input parameter will also reset default value, to avoid having the wrong type value set and to work the same as local variables Change 3426941 on 2017/05/05 by Dan.Oconnor Fix determinstic cooking of LoadAssetClass nodes in macros Change 3427021 on 2017/05/05 by Dan.Oconnor Build fix, make initialization order in source match artifact #rnx Change 3427135 on 2017/05/05 by Phillip.Kavan #jira UE-44702 - Restore code-based interface classes to Blueprint editor UI. Change summary: - Partially backed out CL# 3348513 to return to previous behavior for 4.16. The UI is no longer filtering on the __is_abstract() type trait for interface classes. - Modified FNativeClassHeaderGenerator::ExportClassFromSourceFileInner() to emit the _getUObject() declaration for native interface types as a default implementation that returns NULL rather than as a pure virtual declaration. #rnx Change 3427144 on 2017/05/06 by Marc.Audy Fix init order #rnx Change 3427146 on 2017/05/06 by Marc.Audy remove stray semicolon #rnx Change 3427242 on 2017/05/06 by Phillip.Kavan #jira UE-44744 - Fix a regression in which a UMG Widget Blueprint property not explicitly marked as a variable would cause Blueprint nativization to fail at package time. Change summary: - Modified FWidgetBlueprintCompiler::CreateClassVariablesFromBlueprint() to only add 'Category' metadata when we set the 'CPF_BlueprintVisible' flag on the UProperty, which in is now tied to whether or not the property has been explcitly marked as a variable. This avoids a UHT warning when compiling the nativized codegen that would cause packaging to fail. #rnx Change 3427720 on 2017/05/08 by Dan.Oconnor Backing out 3419202 #rnx Change 3427725 on 2017/05/08 by Dan.Oconnor SA fix #rnx Change 3427734 on 2017/05/08 by Dan.Oconnor More exhaustive GEditor null checks, to appease SA #rnx Change 3427882 on 2017/05/08 by Marc.Audy Properly order all booleans in intialization #rnx Change 3428049 on 2017/05/08 by Marc.Audy Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3427804 #rnx Change 3428523 on 2017/05/08 by Ben.Zeigler #jira UE-44781 Refresh function input UI when blueprint graph refreshes, needed as pins may have gone away Change 3428563 on 2017/05/08 by Ben.Zeigler #jira UE-44783 If setting a hard reference pin type from a string, load the referenced object. Change 3428595 on 2017/05/08 by Dan.Oconnor Avoid node reconstruction when we're compiling a blueprint with no linker (e.g., a duplicated blueprint) #jira UE-44777 Change 3428599 on 2017/05/08 by Ben.Zeigler #jira UE-44789 Fix string asset renamer to not mark IsPersistent becuase that crashes in lightmap code, change it so the path fixup doesn't require the persistent flag Change 3428609 on 2017/05/08 by Dan.Oconnor Improved fix for UE-44777 #jira UE-44777 #rnx Change 3429176 on 2017/05/08 by Phillip.Kavan #jira UE-44755 - Fix nativization build errors when packaging a game project that is not IWYU-compliant for a build target that disables PCH files. - Mirrored from //UE4/Release-4.16 (CL# 3429030). #rnx Change 3429198 on 2017/05/08 by Phillip.Kavan CIS fix. #rnx Change 3429583 on 2017/05/08 by Ben.Zeigler Fix SGraphPinClass to work properly after my changes to allow unloaded assets. For Class pins we need to store separate Runtime and Editor asset data objects, as one has _C and refers to the class, and the other doesn't and refers to the blueprint. The content browser wants the editor path, the pin defaults want the runtime path. Change default value widgets to look more like properties widgets by forcing them to act as highlighted and disabling black background Change 3429640 on 2017/05/08 by Marc.Audy Fix issues with select nodes in macros connected to wildcard pins. #jira UE-44799 #rnx Change 3429890 on 2017/05/08 by Ben.Zeigler Fix function/macro defaults to properly propagate when changed using the new edit UI Refactor some code out of the details customization into the k2 schema Disable defaults UI for object/class/interface hard references as it is disabled in KismetCompiler Change 3429947 on 2017/05/08 by Michael.Noland Core: Backing out CL# 3394352 (marking FDateTime and FTimespan nonexport member Tick with UPROPERTY()), which will re-break UE-39921 but fix UE-44418 There appears to be a more serious underlying issue with how the CDO is instanced which needs to be addressed #jira UE-44418 #reimplementing 3411681 from Release 4.16 Change 3429987 on 2017/05/08 by Ben.Zeigler #jira UE-44798 Do a better job of validating object paths saved as default values, due to an old bug with local variables some object paths are saved as struct exportext At load time clear invalid default value for local variables Add IsValidObjectPath to FPackageName that validates the passed in path would be valid to load with LoadObject Change 3430392 on 2017/05/09 by Marc.Audy Fix SA CIS error #rnx Change 3430747 on 2017/05/09 by Ben.Zeigler #jira UE-44836 Don't reconstruct node during callback for param value changing, this can happen during a reconstruction and recursive reconstruction is unsafe Don't call ModifyUserDefinedPinDefaultValue unless the default value has actually changed Change 3431027 on 2017/05/09 by Marc.Audy Fix BPRW mark up causing Ocean warnings #rnx Change 3431353 on 2017/05/09 by Marc.Audy Fix UHT error due to exposing FJsonObjectWrapper to blueprints #rnx [CL 3431398 by Marc Audy in Main branch]
2017-05-09 17:15:32 -04:00
UFUNCTION(BlueprintCallable, Category = "AI|Perception", meta = (WorldContext="WorldContextObject"))
static TSubclassOf<UAISense> GetSenseClassForStimulus(UObject* WorldContextObject, const FAIStimulus& Stimulus);
protected:
UFUNCTION()
Copying //UE4/Dev-Framework to Dev-Main (//UE4/Dev-Main) @ 2926658 #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2821607 on 2016/01/08 by Mieszko.Zielinski Added a way to limit amount of information logged by vlog by discarding logs from classes from outside of class whitelist #UE4 This feature was followed by refactoring of functions taking FVisualLogEntry pointers to use references instead. #rb Lukasz.Furman #codereview John.Abercrombie Change 2828384 on 2016/01/14 by Mieszko.Zielinski Back out of visual log refactor done as part of CL#2821607 #UE4 Change 2910454 on 2016/03/15 by Zak.Middleton #ue4 - Properly exclude zero-distance MTD results in ComponentEncroachesBlockingGeometry_WithAdjustment() in the presense of multiple overlaps. #rb Jeff.Farris #jira UE-24327 UDN: https://udn.unrealengine.com/questions/270574/jeff-farris-hack-for-physx-mtd.html Change 2910548 on 2016/03/15 by Zak.Middleton #ue4 - Handle MTD computation returning NaN direction when there is a "contact" with zero distance. Change 2912311 on 2016/03/16 by Marc.Audy Properly handle overlaps in C++ in documentation code and UE4 to Unity doc #rb Martin.Wilson Change 2913086 on 2016/03/17 by Marc.Audy Adding ability to have 9 parameters to a dynamic delegate Change 2913101 on 2016/03/17 by Marc.Audy Fix some of the loctext error messages Change 2913102 on 2016/03/17 by Thomas.Sarkanen Console usability improvements Display console autocompletion commands from the lexicographically first element up to either the total number of commands or MAX_AUTOCOMPLETION_LINES, whichever is least. The previous behaviour started the list "in the middle" and hid the first elements if there were too many matches. Thus "[ab ac ad]" with "aa" hidden now becomes "[aa ab ac]" with "ad" hidden. To make scrolling work as expected, the input handling of the up and down arrow keys has been reversed so that the cursor iterates forward starting from the top with the down arrow key, and goes back up with the up arrow key. Command history is still accessed with the up arrow key. This commit also undoes one of the most evil uses of operator overloading I've ever seen, on par with "#define true false" but more subtle Color console autocomplete entries to denote their type: command, CVar or other (manual autocompletion entries). CVars are further divided into writeable and read-only variables. Assume that manual console autocompletion entries are commands. This makes the autocompletion list colors more consistent and less noisy Automatically select (but don't complete) a command on console character input. To prevent the autocomplete from becoming too trigger happy, no longer automatically complete commands for arbitrary key inputs that we happen to have a match for Allow cycling through console commands with the tab key Discriminate between first time and repeated tab presses and only scroll through autocomplete entries on the latter Fix off-by-one error in console: "x more matches" line was being shown when the number of autocomplete elements was equal to MAX_AUTOCOMPLETION_LINES Fix an off-by-one error that was causing the topmost console command to not be shown if there was an autocomplete scroll region Show the currently selected autocomplete entry faded out behind the user's typed input Slightly increase brightness of the normal input text colour to better distinguish between the typed and autocompleted parts of the input line Left-justify command descriptions in the console autocompletion box Detect overflow of console autocomplete lines on low resolutions and decrease the space used for description justification to compensate Make the console input, history and autocomplete colours user configurable Add console background transparency. Configurable, set to 15% by default Add missing closing quote to the console dump HTML template #github #2061: Console usability improvements from Mattiwatti Change 2913104 on 2016/03/17 by Thomas.Sarkanen Added indicator displayed on animation nodes when they use the 'fast path' Added checkbox that can be used to audit Blueprint fast-path usage. Switched almost all animation node widgets to derive from new SAnimationGraphNode. This creates the overlay widget that indicates whether this node is using a more optimal path. #doc Also added documentation tooltips and UDN doc files/images for the fast path systems. #jira UE-24698 - Add icon to pins in anim graph to indicate 'fast mode' access #rb Martin.Wilson Change 2913306 on 2016/03/17 by Marc.Audy Cleaning up GetResourceSize - Made many call Super::GetResourceSize - Removed trivial implementations - Fixed HierarchicalInstanceStaticMeshComponent double counting an array Change 2913535 on 2016/03/17 by Lukasz.Furman fixed broken behavior tree graph data after subnode undo #ue4 UE-28198 Change 2913608 on 2016/03/17 by Lukasz.Furman fixed behavior tree execution indices after undoing move in editor #ue4 UE-26705 Change 2913847 on 2016/03/17 by Lukasz.Furman added new automation test for UE-28309 #ue4 Change 2913849 on 2016/03/17 by Lukasz.Furman fixed behavior tree skipping over branch when restart request comes during AbortCurrentTask call #ue4 UE-28309 Change 2913895 on 2016/03/17 by Marc.Audy Added 'self' argument to Actor and PrimitiveComponent delegates that didn't already supply one Fixed up all C++ uses of these delegates #jira UE-23122 #rb Zak.Middleton Change 2914743 on 2016/03/18 by Thomas.Sarkanen Editing of primitive data in PhAT [CL 2926677 by Marc Audy in Main branch]
2016-03-29 16:33:59 -04:00
void OnPerceptionStimuliSourceEndPlay(AActor* Actor, EEndPlayReason::Type EndPlayReason);
/** requests registration of a given actor as a perception data source for specified sense */
void RegisterSource(FAISenseID SenseID, AActor& SourceActor);
/** iterates over all pawns and registeres them as a source for sense indicated by SenseID. Note that this will
* be performed only for senses that request that (see UAISense.bAutoRegisterAllPawnsAsSources).*/
virtual void RegisterAllPawnsAsSourcesForSense(FAISenseID SenseID);
enum EDelayedStimulusSorting
{
RequiresSorting,
NoNeedToSort,
};
/** sorts DelayedStimuli and delivers all the ones that are no longer "in the future"
* @return true if any stimuli has become "current" stimuli (meaning being no longer in future) */
bool DeliverDelayedStimuli(EDelayedStimulusSorting Sorting);
void OnNewListener(const FPerceptionListener& NewListener);
void OnListenerUpdate(const FPerceptionListener& UpdatedListener);
void OnListenerRemoved(const FPerceptionListener& UpdatedListener);
Merging using UE4-Fortnite-To-UE4 from CL 2261973 Includes the following engine-level changes (among others; biggest change is enabling world assets by default): CL 2252857 added dynamic allocations for path finding, removed hardcoded limit of 128 polys in path corridor CL 2256142 Added support for native arrays in JSON object converter. - Permissive in treating arrays of size 1 and scalars as equivalent - Excess elements in JSON are ignored. Serialization succeeds but a warning is logged CL 2256073 Fixed a bug in ARecastNavMesh::BatchRaycast resulting in NaN hit locations CL 2253797 #UE4 More aggressively setting RF_Public and RF_Standalone flags on maps and ensuring world names match package names. This is necessary because umaps are currently being managed outside of the content browser and it is causing a few issues. Also, packages containing maps now synthesize asset data when the package contains absolutely no asset data (probably because the UWorld in it was not RF_Public at the time it was saved due to a previous bug). CL 2258142 #UE4 Added a GC during map load that reclaims memory allocated during load/init. This is needed to finish the load on low-memory devices in games that allocate more memory after load. CL 2247003 Added homing to ProjectileMovementComponent - Homing requires both a bool and a target component to be set, the strength is determined by a customizable variable - Both homing and gravity are now applied in the new virtual function "CalculateAcceleration" CL 2247249 Moved the homing modification to acceleration occur in a separate function specifically for homing CL 2257043 - Guard net dormancy calls against executing on clients, based on thread with DaveR and JohnP; This particular case was the result of an intentionally client-authoritative actor calling the dormancy functions via inheritance CL 2245629 #UE4 - fixed json TryGetNumber to round negatives appropriately CL 2255312 #UE4 Enabling World Assets by default. CL 2260956 Analytics ET now loads HTTP at StartupModule so the module will be available during ShutdownModule to flush events CL 2245571 GenericTeamAgentInterface can now retrieve attitude of an agent towards a given actor #UE4 - Made PerceptionSystem's sight sense take advantage of that CL 2246897 Fixed perception listeners not being removed from the PerceptionSystem on Owner's end play #UE4 - addresses TTP#343392 CL 2260634 added more debug data for NaN in crowd simulation CL 2248387 Added possibility to debug multiple EQS queries with GameplayDebugger. #ue4 Fixed network replication from bandwidth point of view for data in GameplayDebugger. #ue4 CL 2253281 Added additional information to the visual logger for UBTCompositeNode::DoDecoratorsAllowExecution - We now keep track of whether a decorator allows execution, in addition to the existing log for not allowing execution CL 2255310 #UE4 The world browser module now listens to WorldAdded/WorldDestroyed events instead of WorldInit/WorldCleanup events. Worlds can be initialized without being the editor world and this handles that case. CL 2258256 #UE4 Replacing the SOpenLevelDialog with a new generic SAssetDialog. This dialog will be used as a generic Open or Save As dialog for assets. [CL 2266822 by Billy Bramer in Main branch]
2014-08-21 20:30:51 -04:00
void PerformSourceRegistration();
/** Returns true if aging resulted in tagging any of the listeners to process
* its stimuli (@see MarkForStimulusProcessing)*/
bool AgeStimuli(const float Amount);
UE_DEPRECATED(4.26, "Parameterless AgeStimuli has been deprecated, please use the other AgeStimuli flavor. To get behavior identical to the old one calls AgeStimuli(PerceptionAgingRate).")
void AgeStimuli();
friend class UAISense;
FORCEINLINE AIPerception::FListenerMap& GetListenersMap() { return ListenerContainer; }
friend class UAISystem;
virtual void OnNewPawn(APawn& Pawn);
virtual void StartPlay();
/** Timestamp of the next stimuli aging */
float NextStimuliAgingTick;
private:
/** cached world's timestamp */
float CurrentTime;
};
//////////////////////////////////////////////////////////////////////////
template<typename FSenseClass>
void UAIPerceptionSystem::RegisterSource(AActor& SourceActor)
{
FAISenseID SenseID = UAISense::GetSenseID<FSenseClass>();
if (IsSenseInstantiated(SenseID) == false)
{
RegisterSenseClass(FSenseClass::StaticClass());
SenseID = UAISense::GetSenseID<FSenseClass>();
check(SenseID.IsValid());
}
RegisterSource(SenseID, SourceActor);
}