Files

645 lines
19 KiB
C++
Raw Permalink Normal View History

// Copyright Epic Games, Inc. All Rights Reserved.
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3967517) #rb none #lockdown Nick.Penwarden #rnx ============================ MAJOR FEATURES & CHANGES ============================ Change 3804281 by Fred.Kimberley Improve contrast on watches in blueprints. Change 3804322 by Fred.Kimberley First pass at adding a watch window for blueprint debugging. Change 3804737 by mason.seay Added some Descriptions to tests that didn't have any, and fixed some typos Change 3806103 by mason.seay Moved and Renamed Timers test map and content appropriately Change 3806164 by Fred.Kimberley Add missing property types to GetDebugInfoInternal. #jira UE-53355 Change 3806617 by Dan.Oconnor Function Terminator (and derived types) now use FMemberReference instead of a UClass/FName pair. This fixes various bugs when resolving the UFunction referenced by the function terminator #jira UE-31754, UE-42431, UE-53315, UE-53172 Change 3808541 by Fred.Kimberley Add support for redirecting user defined enums. This is in response to the following UDN thread: https://udn.unrealengine.com/questions/404141/is-is-possible-to-create-a-redirector-from-a-bluep.html Change 3808565 by mason.seay Added a few more struct tests Change 3809840 by mason.seay Renamed CharacterMovement.umap to CharacterCollision. Fixed up content to reflect this change. Change 3809847 by mason.seay Added Object Timer tests. Fixed up existing timer test to remove delay dependency Change 3811704 by Ben.Zeigler Fix issue where identical enum redirects registered to different initial names would throw an incorrect error, it's fine if the value change maps are identical Change 3811946 by Ben.Zeigler #jira UE-53511 Fix it so it is possible to set a user defined struct value back to it's default. The UDS hack in PropertyValueToString is no longer needed, but this could affect some other user struct editor operations Change 3812061 by Dan.Oconnor Stepping over or in to nodes that are expanded at compile time (e.g. event nodes, spawn actor nodes) no longer requires multiple 'steps' #jira UE-52854 Change 3812259 by Dan.Oconnor Fix asset broken by removal of an unkown enum #jira UE-51419 Change 3812904 by Ben.Zeigler Make ResolveRedirects on StreamableManager public as it can be used to validate things Change 3812958 by Ben.Zeigler #jira UE-52977 Fix crashes when binding blueprint editor commands to keys and using from invalid contexts Change 3812975 by Mieszko.Zielinski Added contraptions to catch a rare eidtor-time EQS crash #UE4 #jira UE-53468 Change 3818530 by Phillip.Kavan Fix incorrect access to nested instanced subobjects in nativized Blueprint ctor codegen. Change summary: - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to properly reference the outer and check ptr validity when creating/obtaining nested default subobjects. - Modified FEmitDefaultValueHelper::HandleClassSubobject() to better guard against code generation based on an invalid local variable name. #jira UE-52167 Change 3819733 by Mieszko.Zielinski Marked UAISenseConfig_Blueprint and UAISense_Blueprint as hidedropdown #UE4 #jira UE-15089 Change 3821776 by Marc.Audy Remove redundent code in SpawnActorFromClass that already exists in ConstructObjectFromClass parent class Change 3823851 by mason.seay Moved and renamed blueprints used for Object Reference testing Change 3824165 by Phillip.Kavan Ensure that subobject class types are constructed prior to accessing a subobject CDO in a nativized Blueprint class's generated ctor at runtime. Change summary: - Modified FFakeImportTableHelper to tag subobject class types as a preload dependency of the outer converted Blueprint class type and not of the CDO. #jira UE-53111 Change 3830309 by mason.seay Created Literal Gameplay Tag Container test Change 3830562 by Phillip.Kavan Blueprint nativization bug fixes (reviewed/taken from PR). Change summary: - Modified FSafeContextScopedEmitter::ValidationChain() to ensure that generated code calls the global IsValid() utility function on objects. - Modified FBlueprintCompilerCppBackend::EmitCreateArrayStatement() to generate a proper cast on MakeArray node inputs for enum class types. - Modified FBlueprintCompilerCppBackend::EnimCallStatementInner() to more correctly identify an interface function call site. - Modified FEmitHelper::GenerateAutomaticCast() to properly handle automatic casts of enum arrays. - (Modified from PR source) Added new FComponentDataUtils statics to consolidate custom init code generation for converted special-case component types (e.g. BodyInstance). Ties native component DSOs to the same pre/post as converted non-native component templates around the OuterGenerate() loop. - Modified FExposeOnSpawnValidator::IsSupported() to include CPT_SoftObjectReference property types. - Modified UBlueprintGeneratedClass::CheckAndApplyComponentTemplateOverrides() to no longer break out of the loop before finding additional ICH override record matches. #4202 #jira UE-52188 Change 3830579 by Fred.Kimberley Add support for turning off multiple watches at once in the watch window. #jira UE-53852 Change 3836047 by Zak.Middleton #ue4 - Dev test maps for overlaps perf tests. Change 3836768 by Phillip.Kavan Fix for a build failure that could occur with Blueprint nativization enabled and EDL disabled. This was a regression introduced in 4.18. Change summary: - Modified FEmitDefaultValueHelper::AddStaticFunctionsForDependencies() to emit the correct signature for constructing FBlueprintDependencyData elements when the EDL boot time optimization is disabled. #jira UE-53908 Change 3838085 by mason.seay Functional tests around basic blueprint functions Change 3840489 by Ben.Zeigler #jira UE-31662 Fix regression with renaming parent inherited function. It was not correctly searching the parent's skeleton class during the child's recompile so it was erroneously detecting the parent function as missing Change 3840648 by mason.seay Updated Descriptions on tests Change 3842914 by Ben.Zeigler Improve comments around stremable handle cancel/release Change 3850413 by Ben.Zeigler Fix asset registry memory reporting, track some newer fields and correctly report the state size instead of static size twice Copy of CL #3849610 Change 3850426 by Ben.Zeigler Reduce asset registry memory in cooked build by stripping out searchable names and empty dependency nodes by default Add option to strip dependency data for asset data with no tags, this was always true before but isn't necessarily safe Copy of CL #3850389 Change 3853449 by Phillip.Kavan Fix a scoping issue for local instanced subobject references in nativized Blueprint C++ code. Also, don't emit redundant assignment statements for instanced subobject reference properties. Change summary: - Consolidated FComponentDataUtils into FDefaultSubobjectData and extended FNonativeComponentData from it in order to handle both native & non-native DSO initialization codegen through a more common interface. - Exposed FEmitDefaultValueHelper::HandleInstancedSubobject() as a public API and added a 'SubobjectData' parameter to allow initialization codegen to be deferred until after all default subobjects have been mapped to local variables within the current scope. - Modified FEmitDefaultValueHelper::GenerateConstructor() to first map all default subobjects to local variables and then emit any delta initialization code for property values. - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to return an empty string for an instanced reference to a default subobject. This allows us to avoid emitting initialization statements to unnecessarily reassign instances back to the same property. - Modified FEmitDefaultValueHelper::InnerGenerate() to better handle instanced references to default subobjects, ensuring that we don't emit unnecessary assignment statements and array initialization code to the converted class constructor in C++. - Fixed a few typos. #jira UE-53960 Change 3853465 by Phillip.Kavan Fix plugin module C++ source template to conform to recent public include path changes. Change 3857599 by Marc.Audy PR #4438: UE-54281: Make None a valid default value to select (Contributed by projectgheist) #jira UE-54281 #jira UE-54399 Change 3863259 by Zak.Middleton #ue4 - Save bandwidth for replicated characters by only replicating 4 byte timestamp value to clients if it's actually needed for Linear smoothing. Added option to always replicate the timestamp ("bNetworkAlwaysReplicateTransformUpdateTimestamp", default off), in case users still want this timestamp for some reason, or if smoothing mode changes dynamically and the server won't know. #jira UE-46293 Change 3863491 by Zak.Middleton #ue4 - Reduce network RPC overhead for players that are not moving. Added ClientNetSendMoveDeltaTimeStationary (default 12Hz) to supplement existing ClientNetSendMoveDeltaTime and ClientNetSendMoveDeltaTimeThrottled. UCharacterMovementComponent::GetClientNetSendDeltaTime() now uses this time if Acceleration and Velocity are zero, and the control rotation matches the last ack'd control rotation from the server. Also fixed up code default for ClientNetSendMoveDeltaTime to match default INI value. #jira UE-21264 Change 3865325 by Zak.Middleton #ue4 - Fix static analysis warning about possible null PC pointer. #jira none Change 3869828 by Ben.Zeigler #jira UE-54786 Fix it so -cookonthefly cooperates with -iterate by writing out a development asset registry Change 3869969 by mason.seay Character Movement Functional Tests Change 3870099 by Mason.Seay Submitted asset deletes Change 3870105 by mason.seay Removed link to anim blueprint to fix errors Change 3870238 by mason.seay Test map for Async Loading in a Loop Change 3870479 by Ben.Zeigler Add code to check CoreRedirects for SoftObjectPaths when saving or resolving in the editor. This is a bit slow so we don't want to do it on load We don't have any good way to know the type of a path so I check both Object and Class redirectors, which will also pickup Module renames Change 3875224 by mason.seay Functional tests for Event BeginPlay execution order Change 3875409 by mason.seay Optimized and fixed up character movement tests (because a potential bug in FunctionalTestActor is always passing a test when it can fail) Change 3878947 by Mieszko.Zielinski CIS fixes #UE4 Change 3879000 by Mieszko.Zielinski More CIS fixes #UE4 Change 3879139 by Mieszko.Zielinski Even moar CIS fixes #UE4 Change 3879742 by mason.seay Added animation to Nativization Widget asset Change 3880198 by Zak.Middleton #ue4 - CanCrouchInCurrentState() returns false when character capsule is simulating physics. #jira UE-54875 github #4479 Change 3880266 by Zak.Middleton #ue4 - Optimize UpdateCharacterStateBeforeMovement() to do cheaper tests earlier (avoid CanCrouchInCurrentState() unless necessary, now that it tests IsSimulatingPhysics() which is not trivial). #jira UE-54875 Change 3881546 by Mieszko.Zielinski *.Build.cs files clean up - removed redundant dependencies from NavigationSystem and AIModule #UE4 Change 3881547 by Mieszko.Zielinski Removed a bunch of DEPRECATED functions from the new NavigationSystem module #UE4 Removed all deprecates prior 4.15 (picked this one because I do know some licencees are still using it). Change 3881742 by mason.seay Additional crouch test to cover UE-54875 Change 3881794 by Mieszko.Zielinski Fixed a bug in FVisualLoggerHelpers::GetCategories resulting in losing verbosity information #UE4 Change 3884503 by Mieszko.Zielinski Fixed TopDown code template to make it compile after navsys refactor #UE4 #jira UE-55039 Change 3884507 by Mieszko.Zielinski Switched ensures in UNavigationSystemV1:SimpleMoveToX to error-level logs #UE4 It's an error rather than a warning because the functions no longer do anything. Making it work would require a cyclic dependency between NavigationSystem and AIModule. #jira UE-55033 Change 3884594 by Mieszko.Zielinski Added a const FNavigationSystem::GetCurrent version #UE4 lack of it was causing KiteDemo to not compile. Change 3884602 by Mieszko.Zielinski Mac editor compilation fix #UE4 Change 3884615 by Mieszko.Zielinski Fixed FAIDataProviderValue::GetRawValuePtr not being accessible from outside of AIModule #UE4 Change 3885254 by Mieszko.Zielinski Guessfix for UE-55030 #UE4 The name of NavigationSystem module was put in wrong in the IMPLEMENT_MODULE macro #jira 55030 Change 3885286 by Mieszko.Zielinski Changed how NavigationSystem module includes DerivedDataCache module #UE4 #jira UE-55035 Change 3885492 by mason.seay Minor tweaks to animation Change 3885773 by mason.seay Resaving assets to clear out warning Change 3886433 by Mieszko.Zielinski Fixed TP_TopDownBP's player controller BP to not use deprecated nav functions #UE4 #jira UE-55108 Change 3886783 by Mieszko.Zielinski Removed silly inclusion of NavigationSystemTypes.h from NavigationSystemTypes.h #UE4 Change 3887019 by Mieszko.Zielinski Fixed accessing unchecked pointer in ANavigationData::OnNavAreaAdded #UE4 Change 3891031 by Mieszko.Zielinski Fixed missing includes in NavigationSystem.cpp #UE4 Change 3891037 by Mieszko.Zielinski ContentEample's navigation fix #UE4 #jira UE-55109 Change 3891044 by Mieszko.Zielinski PR #4456: Fix bug in UAISense_Sight::OnListenerForgetsActor (Contributed by maxtunel) #UE4 Change 3891598 by mason.seay Resaving assets to clear out "empty engine version" spam Change 3891612 by mason.seay Fixed deprecated Set Text warnings Change 3893334 by Mieszko.Zielinski Fixed a bug in navmesh generation resulting in not removing layers that ended up empty after rebuilding #UE4 #jira UE-55041 Change 3893394 by Mieszko.Zielinski Fixed navmesh debug drawing to properly display octree elements with "per instance transforms" (like instanced SMs) #UE4 Also, added a more detailed debug drawing of navoctree contents (optional, but on by default). Change 3893395 by Mieszko.Zielinski Added a bit of code to navigation system's initialization that checks the enegine ini for sections refering to the moved navigation classes, and complain about it #UE4 The message is printed as an error-level log line and it says what should the offending section be renamed to. Change 3895563 by Dan.Oconnor Mirror 3895535 Append history from previous branches in source control history view #jira none Change 3896930 by Mieszko.Zielinski Added an option to tick navigation system while the game is paused #UE4 Controlled via NavigationSystemV1.bTickWhilePaused, ini- and ProjectSettings-configurable. #jira UE-39275 Change 3897554 by Mieszko.Zielinski Unified how NavMeshRenderingComponent draws navmesh and octree collision's polys #UE4 Change 3897556 by Mieszko.Zielinski Fixed what kind of nav tile bounds we're sending to nav-colliding elements when calling 'per-instance transform' delegate #UE4 #jira UE-45261 Change 3898064 by Mieszko.Zielinski Made SM Editor display AI-navigation-related whenever bHasNavigationData is set to true #UE4 #jira UE-50436 Change 3899004 by Mieszko.Zielinski Fixed UEnvQueryItemType_Actor::GetItemLocation and UEnvQueryItemType_Actor::GetItemRotation to return FAISystem::InvalidLocation and FAISystem::InvalidRotation respectively instead of '0' when hosted Actor ptr is null #UE4 Note for programmers: this changes the default behavior of this edge case. You might want to go through your code and check if you're comparing UEnvQueryItemType_Actor::GetItem*'s results to 0. Change 3901733 by Mieszko.Zielinski Made FEnvQueryInstance::PrepareContext implementations returning vectors and rotators ignore InvalidLocation and InvalidRotation (respectively) #UE4 Change 3901925 by Ben.Zeigler #jira UE-55395 Fix issue where the cooker could load asset registry caches made in -game that do not have dependency data, leading to broken cooks Change 3902166 by Marc.Audy Make ULevel::GetWorld final Change 3902749 by Ben.Zeigler Fix it so pressing refresh button in asset audit window actually refreshes the asset management database Change 3902763 by Ben.Zeigler #jira UE-55407 Fix it so editor tutorials are not cooked unless referenced, by correctly marking soft object paths imported from editor project settings as editor-only Change 3905578 by Phillip.Kavan The UX to add a new parameter on a Blueprint delegate is now at parity with Blueprint functions. #4392 #jira UE-53779 Change 3905848 by Phillip.Kavan First pass of the experimental Blueprint graph bookmarks feature. #jira UE-10052 Change 3906025 by Phillip.Kavan CIS fix. Change 3906195 by Phillip.Kavan Add missing icon file. Change 3906356 by Phillip.Kavan Moved Blueprint bookmarks enable flag into EditorExperimentalSettings for consistency with other options. Change 3910628 by Ben.Zeigler Partial fix for UE-55363, this allows references to ObjectRedirectors to be switched from parent class to a child class on load as this should always be safe This does not actually fix UE-55363 because that case is changing from UMaterial to UMaterialInstanceConstant, and those are siblings instead of parent/child Change 3912470 by Ben.Zeigler #jira UE-55586 Fix issue with saving redirected soft object paths where the export sort could accidentally cause the parent CDO to get modified between name tagging and writing exports, which is unsafe because due to delta serialization it would try to write names that were not previously tagged Change 3913045 by Marc.Audy Fix issues where recursion in to child actors wasn't being handled correctly Change 3913398 by Fred.Kimberley Fixes a misspelled name for one of the classes in the ability system. PR #4430: Fixed spelling of FGameplayAbilityInputBinds. (Contributed by IntegralLee) #github #jira UE-54327 Change 3918016 by Fred.Kimberley Ensure AllocGameplayEffectContext is being used in all cases where FGameplayeEffectContext is being created. #jira UE-52668 PR #4250: Only create FGameplayEffectContext via AbilitySystemGlobals::.AllocGameplayEffectContext (Contributed by slonopotamus) #github Change 3924653 by Mieszko.Zielinski Fixed LoadEngineClass local to UnrealEngine.cpp to check class redirects before falling back to default class instance #UE4 #jira UE-55378 Change 3925614 by Phillip.Kavan Fix ForEachEnum node to skip over hidden enum values in new placements by default. Change summary: - Added FKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() as an internal-only Blueprint node support API. - Modified FForExpandNodeHelper::AllocateDefaultPins() to add a "Skip Hidden" input pin (advanced). Pin default value is false. - Added a UK2Node_ForEachElementInEnum::PostPlacedNewNode() override to set the default value of the "Skip Hidden" input pin to 'true' for all new node placements. - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include additional expansion logic based on the "Skip Hidden" input pin. For new placements (i.e. when the pin defaults to 'true'), an intermediate branch node will now be inserted into the compiled execution sequence to test for "hidden" metadata on the value before executing the loop body. If the input pin is linked, another intermediate branch will be inserted into the execution sequence prior to the "hidden" metadata test. All existing placements of the node will remain as-is after compilation (i.e. no additional intermediate branch nodes will be included in the expansion). #jira UE-34563 Change 3925649 by Marc.Audy Fix up issue post merge from Main with navigation system refactor Change 3926293 by Phillip.Kavan Temp fix to unblock CIS. #jira UE-34563 Change 3926523 by Marc.Audy Ensure that a renamed Actor is in the correct Actors array #jira UE-46718 Change 3928732 by Fred.Kimberley Unshelved from pending changelist '3793298': #jira UE-53136 PR #4287: virtual additions for AttributeSet extendability (Contributed by TWIDan) #github Change 3928780 by Marc.Audy PR #4309: The display names of the functions. (Contributed by SertacOgan) #jira UE-53334 Change 3929730 by Joseph.Wysosky Submitting test assets for the new Blueprint Structure test cases Change 3931919 by Joseph.Wysosky Deleting BasicStructure asset to rest MemberVariables back to default settings Change 3931922 by Joseph.Wysosky Adding BasicStructure test asset back with default members Change 3932083 by Phillip.Kavan Fix Compositing plugin source files to conform to updated relative include path specifications. - Encountered while testing Blueprint nativization of assets with dependencies on Composure/LensDistortion APIs. Change 3932196 by Dan.Oconnor Resetting a property to default now uses the same codepath as assigning the value from the slate control #jira UE-55909 Change 3932408 by Lukasz.Furman fixed behavior tree services attached to task nodes being sometimes recognized as root level #jira nope Change 3932808 by Marc.Audy PR #4083: Change to UK2Node_BaseAsyncTask to have pin tooltips on latent nodes (Contributed by dwrpayne) #jira UE-50871 Change 3934101 by Phillip.Kavan Revise ForEachEnum node expansion logic to exclude hidden values at compile time. Change summary: - Removed UKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() (no longer in use). - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include an enum switch node in the expansion, which will exclude hidden values when constructed. The additional expansion will occur if the enum type contains at least one hidden value. #jira UE-34563 Change 3934106 by Phillip.Kavan Mirrored 4.19 fixes to allow for EngineTest iteration w/ nativization enabled. Change summary: - Mirrored CLs 3876918, 3878968, 3883257, 3885566, 3912161 and 3920519. Change 3934116 by Phillip.Kavan UBT: Explicitly define the DEPRECATED_FORGAME macro only for non-engine modules. Change summary: - Modified UEBuildModule.SetupPrivateCompileEnvironment() to check the 'bTreatAsEngineModule' flag from the rules assembly rather than testing the module's build type. Change 3934382 by Phillip.Kavan Avoid inclusion of monolothic engine header files in nativized Blueprint codegen. Change 3936387 by Mieszko.Zielinski Added a flag to NavModifierComponent to control whether agent's height is being used while expadning modifier's bounds during navmesh generation #UE4 Change 3936905 by Ben.Marsh Disable IncludeTool warning for DEPRECATED_FORGAME macro; we expect this to be different for game modules. Change 3940537 by Marc.Audy Don't allow maps, sets, or arrays with an actor inner type in user defined structs to select an actor from the currently open level as default value. #jira UE-55938 Change 3940901 by Marc.Audy Properly name CVar global to reflect what it is for Change 3943043 by Marc.Audy Fix world context functions not being able to be used in CheatManager derived blueprints #jira UE-55787 Change 3943075 by Mieszko.Zielinski Moved path-following related delegats' interface from NavigationSystemBase over to a new IPathFollowingManagerInterface #UE4 Change 3943089 by Mieszko.Zielinski Fixed how WorldSettings.NavigationSystemConfig gets created #UE4 Made it so that there's always a NavigationSystemConfig instance present, but added a 'Null' config - this was required due to issues with creation/serialization of instanced subobjects. The change required adding copying constructors to FNavAgentProperties and FNavDataConfig. Also, fixed FNavAgentProperties.IsEquivalent to be symetrical. Change 3943225 by Marc.Audy Fix spelling of Implements Change 3950813 by Marc.Audy Include owner in attachment mismatch ensure #jira UE-56148 Change 3950996 by Marc.Audy Fix cases where bit packed properties used the entire byte not just the bit when interacting with boolean arrays #jira UE-55482 Change 3952086 by Marc.Audy PR #4483: Add Missing Radial Damage Multicast Delegate (Contributed by error454) #jira UE-54974 Change 3952720 by Marc.Audy PR #4575: Check if *Pawn* is a null Pointer (Contributed by dani9bma) #jira UE-56248 Change 3952804 by Richard.Hinckley Changes to BP API export commandlet to support better plugin exporting. Contributed by Harry Wang of Google. Change 3952962 by Marc.Audy UHT now validates that ExpandEnumAsExecs references a valid parameter to the function. #jira UE-49610 Change 3952977 by Phillip.Kavan Fix EDL cycle at load time in nativized cooked builds when a circular dependency exists between converted and unconverted assets. Change summary: - Added FGatherConvertedClassDependencies::MarkUnconvertedClassAsNecessary(). - Modified FFindAssetsToInclude::MaybeIncludeObjectAsDependency() to mark unconverted BPGCs (e.g. DOBPs) as necessary for conversion when the potential for a circular dependency exists so that we generate stub wrappers rather than depend on them directly. - Fixed a few typos in existing API names. #jira UE-48233 Change 3953658 by Marc.Audy (4.19.1) Fix inserting a reroute node causing connections to break on a GetClassDefaults node #jira UE-56270 Change 3954727 by Marc.Audy Add friendly name to custom version mismatch message Change 3954906 by Marc.Audy (4.19.1) Fix crash when undoing changes related to reroute nodes connected to a GetClassDefaults node #jira UE-56313 Change 3954997 by Marc.Audy Ensure and return null if GetOuter<WithinClass> is called on a CDO for uclasses declared as within another so we don't get a UPackage c-style cast to the expected outer type Change 3955091 by Marc.Audy Do not register subcomponents that are not auto register #jira UE-52878 Change 3955943 by Marc.Audy Make AbilitySystemComponent pass parameters by const& instead of ref as no state is being changed Change 3956185 by Zak.Middleton #ue4 - Fix Characters using scoped movement updates (the default) not visually rotating when rotated at small rates at high framerate. This was caused by FScopedMovementUpdate::IsTransformDirty() using a larger FTransform comparison tolerance than USceneComponent::UpdateComponentToWorldWithParent(). #jira none Change 3958102 by Marc.Audy Clean out dead code path from k2node_select Select node now resets pins to wildcard if none of the pins are in use Change 3958113 by Lukasz.Furman added OnSearchStart call to root level behavior tree services #jira UE-56257 Change 3958361 by Marc.Audy Fix literal input pins on select being set to wildcard during compilation Change 3961148 by Dan.Oconnor Mirror 3961139 from Release 4.19 Fix for placeholder objects being left behind when loading certain UMG assets - this could causea crash when loading UMG assets #jira UE-55742 Change 3961640 by Marc.Audy Select node now displays Add Pin button Undo of changing select node index type now works correctly. Connections to option pins now maintained across change of index pin type #jira UE-20742 Change 3962262 by Marc.Audy Display "Object Reference" instead of "Object Object Reference" and "Soft Object Reference" instead of "Object Soft Object Reference" Change 3962795 by Phillip.Kavan Fix for a crash when cooking with Blueprint nativization enabled after encountering a nested instanced editor-only default subobject inherited from a native C++ base class. - Mirrored from //UE4/Release-4.19 (3962782) #jira UE-56316 Change 3962991 by Marc.Audy Modify Negate/Increment/Decrement Int/Float so that the output is always the desired result even if a non-mutable pin is passed in. Note that this can mean the result being returned and the value of the pin passed in if queried again will not be the same (in the case of pure nodes). #jira UE-54807 Change 3963114 by Marc.Audy Fix ensures/crash as a result of UClass expecting to be able to access the UPackage of CDOs via the GetOuterUPackage call. Change 3963427 by Marc.Audy Fix initialization order Initialize bUseBackwardsCompatForEmptyAutogeneratedValue Change 3963781 by Marc.Audy Fix without editor compiles Change 3964576 by Marc.Audy PR #4599: : Working category for timelines (Contributed by projectgheist) #jira UE-56460 #jira UE-26053 Change 3964782 by Dan.Oconnor Mirror 3964772 from Release 4.19 Fix crash when force deleting certain blueprints, we can only check for authoritativeness while reinstancing #jira UE-56447 Change 3965156 by Mieszko.Zielinski PR #4592: Visual Logger optimization to fix rapid FPS drop when many items are hidden (Contributed by tstaples) #jira UE-56435 Change 3965173 by Marc.Audy (4.19.1) Fix incorrectly switching a cooling down tick to be an enabled tick when marking it enabled. #jira UE-56431 Change 3966117 by Marc.Audy Fix select nodes inside macros using wildcard array inputs having issues resolving type. #jira UE-56484 Change 3878901 by Mieszko.Zielinski NavigationSystem's code refactored out of the engine and into a new separate module #UE4 The CL contains required changes to all of our internal projects. Fortnite and Paragon have been tested, while the rest have been only compiled. Change 3879409 by Mieszko.Zielinski Further fallout fixes after ripping out NavigationSystem out of the engine #UE4 - Fixed bad ini redirects (had NavigationSystem.NavigationSystem instead of NavigationSystem.NavigationSystemV1) - Added missing FNavigationSystem::GetDefaultNavDataClass binding (resulting in QAGame's func tests failing) Change 3897655 by Ben.Zeigler #jira UE-55211 Fix it so literal soft object pins on blueprint nodes get correctly cooked/referenced It now sets the thread context to skip internal serialize and calls the archive's serialize function instead of bypassing it, which allows it to pick up references Change 3962780 by Marc.Audy When preventing a split pin from being orphaned, all sub pins must also be prevented. #jira UE-56328 Repack members of UEdGraphPin to avoid wasted space (saves 16bytes) [CL 3967553 by Marc Audy in Main branch]
2018-03-27 14:27:07 -04:00
#include "NavCollision.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
#include "Serialization/MemoryWriter.h"
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3967517) #rb none #lockdown Nick.Penwarden #rnx ============================ MAJOR FEATURES & CHANGES ============================ Change 3804281 by Fred.Kimberley Improve contrast on watches in blueprints. Change 3804322 by Fred.Kimberley First pass at adding a watch window for blueprint debugging. Change 3804737 by mason.seay Added some Descriptions to tests that didn't have any, and fixed some typos Change 3806103 by mason.seay Moved and Renamed Timers test map and content appropriately Change 3806164 by Fred.Kimberley Add missing property types to GetDebugInfoInternal. #jira UE-53355 Change 3806617 by Dan.Oconnor Function Terminator (and derived types) now use FMemberReference instead of a UClass/FName pair. This fixes various bugs when resolving the UFunction referenced by the function terminator #jira UE-31754, UE-42431, UE-53315, UE-53172 Change 3808541 by Fred.Kimberley Add support for redirecting user defined enums. This is in response to the following UDN thread: https://udn.unrealengine.com/questions/404141/is-is-possible-to-create-a-redirector-from-a-bluep.html Change 3808565 by mason.seay Added a few more struct tests Change 3809840 by mason.seay Renamed CharacterMovement.umap to CharacterCollision. Fixed up content to reflect this change. Change 3809847 by mason.seay Added Object Timer tests. Fixed up existing timer test to remove delay dependency Change 3811704 by Ben.Zeigler Fix issue where identical enum redirects registered to different initial names would throw an incorrect error, it's fine if the value change maps are identical Change 3811946 by Ben.Zeigler #jira UE-53511 Fix it so it is possible to set a user defined struct value back to it's default. The UDS hack in PropertyValueToString is no longer needed, but this could affect some other user struct editor operations Change 3812061 by Dan.Oconnor Stepping over or in to nodes that are expanded at compile time (e.g. event nodes, spawn actor nodes) no longer requires multiple 'steps' #jira UE-52854 Change 3812259 by Dan.Oconnor Fix asset broken by removal of an unkown enum #jira UE-51419 Change 3812904 by Ben.Zeigler Make ResolveRedirects on StreamableManager public as it can be used to validate things Change 3812958 by Ben.Zeigler #jira UE-52977 Fix crashes when binding blueprint editor commands to keys and using from invalid contexts Change 3812975 by Mieszko.Zielinski Added contraptions to catch a rare eidtor-time EQS crash #UE4 #jira UE-53468 Change 3818530 by Phillip.Kavan Fix incorrect access to nested instanced subobjects in nativized Blueprint ctor codegen. Change summary: - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to properly reference the outer and check ptr validity when creating/obtaining nested default subobjects. - Modified FEmitDefaultValueHelper::HandleClassSubobject() to better guard against code generation based on an invalid local variable name. #jira UE-52167 Change 3819733 by Mieszko.Zielinski Marked UAISenseConfig_Blueprint and UAISense_Blueprint as hidedropdown #UE4 #jira UE-15089 Change 3821776 by Marc.Audy Remove redundent code in SpawnActorFromClass that already exists in ConstructObjectFromClass parent class Change 3823851 by mason.seay Moved and renamed blueprints used for Object Reference testing Change 3824165 by Phillip.Kavan Ensure that subobject class types are constructed prior to accessing a subobject CDO in a nativized Blueprint class's generated ctor at runtime. Change summary: - Modified FFakeImportTableHelper to tag subobject class types as a preload dependency of the outer converted Blueprint class type and not of the CDO. #jira UE-53111 Change 3830309 by mason.seay Created Literal Gameplay Tag Container test Change 3830562 by Phillip.Kavan Blueprint nativization bug fixes (reviewed/taken from PR). Change summary: - Modified FSafeContextScopedEmitter::ValidationChain() to ensure that generated code calls the global IsValid() utility function on objects. - Modified FBlueprintCompilerCppBackend::EmitCreateArrayStatement() to generate a proper cast on MakeArray node inputs for enum class types. - Modified FBlueprintCompilerCppBackend::EnimCallStatementInner() to more correctly identify an interface function call site. - Modified FEmitHelper::GenerateAutomaticCast() to properly handle automatic casts of enum arrays. - (Modified from PR source) Added new FComponentDataUtils statics to consolidate custom init code generation for converted special-case component types (e.g. BodyInstance). Ties native component DSOs to the same pre/post as converted non-native component templates around the OuterGenerate() loop. - Modified FExposeOnSpawnValidator::IsSupported() to include CPT_SoftObjectReference property types. - Modified UBlueprintGeneratedClass::CheckAndApplyComponentTemplateOverrides() to no longer break out of the loop before finding additional ICH override record matches. #4202 #jira UE-52188 Change 3830579 by Fred.Kimberley Add support for turning off multiple watches at once in the watch window. #jira UE-53852 Change 3836047 by Zak.Middleton #ue4 - Dev test maps for overlaps perf tests. Change 3836768 by Phillip.Kavan Fix for a build failure that could occur with Blueprint nativization enabled and EDL disabled. This was a regression introduced in 4.18. Change summary: - Modified FEmitDefaultValueHelper::AddStaticFunctionsForDependencies() to emit the correct signature for constructing FBlueprintDependencyData elements when the EDL boot time optimization is disabled. #jira UE-53908 Change 3838085 by mason.seay Functional tests around basic blueprint functions Change 3840489 by Ben.Zeigler #jira UE-31662 Fix regression with renaming parent inherited function. It was not correctly searching the parent's skeleton class during the child's recompile so it was erroneously detecting the parent function as missing Change 3840648 by mason.seay Updated Descriptions on tests Change 3842914 by Ben.Zeigler Improve comments around stremable handle cancel/release Change 3850413 by Ben.Zeigler Fix asset registry memory reporting, track some newer fields and correctly report the state size instead of static size twice Copy of CL #3849610 Change 3850426 by Ben.Zeigler Reduce asset registry memory in cooked build by stripping out searchable names and empty dependency nodes by default Add option to strip dependency data for asset data with no tags, this was always true before but isn't necessarily safe Copy of CL #3850389 Change 3853449 by Phillip.Kavan Fix a scoping issue for local instanced subobject references in nativized Blueprint C++ code. Also, don't emit redundant assignment statements for instanced subobject reference properties. Change summary: - Consolidated FComponentDataUtils into FDefaultSubobjectData and extended FNonativeComponentData from it in order to handle both native & non-native DSO initialization codegen through a more common interface. - Exposed FEmitDefaultValueHelper::HandleInstancedSubobject() as a public API and added a 'SubobjectData' parameter to allow initialization codegen to be deferred until after all default subobjects have been mapped to local variables within the current scope. - Modified FEmitDefaultValueHelper::GenerateConstructor() to first map all default subobjects to local variables and then emit any delta initialization code for property values. - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to return an empty string for an instanced reference to a default subobject. This allows us to avoid emitting initialization statements to unnecessarily reassign instances back to the same property. - Modified FEmitDefaultValueHelper::InnerGenerate() to better handle instanced references to default subobjects, ensuring that we don't emit unnecessary assignment statements and array initialization code to the converted class constructor in C++. - Fixed a few typos. #jira UE-53960 Change 3853465 by Phillip.Kavan Fix plugin module C++ source template to conform to recent public include path changes. Change 3857599 by Marc.Audy PR #4438: UE-54281: Make None a valid default value to select (Contributed by projectgheist) #jira UE-54281 #jira UE-54399 Change 3863259 by Zak.Middleton #ue4 - Save bandwidth for replicated characters by only replicating 4 byte timestamp value to clients if it's actually needed for Linear smoothing. Added option to always replicate the timestamp ("bNetworkAlwaysReplicateTransformUpdateTimestamp", default off), in case users still want this timestamp for some reason, or if smoothing mode changes dynamically and the server won't know. #jira UE-46293 Change 3863491 by Zak.Middleton #ue4 - Reduce network RPC overhead for players that are not moving. Added ClientNetSendMoveDeltaTimeStationary (default 12Hz) to supplement existing ClientNetSendMoveDeltaTime and ClientNetSendMoveDeltaTimeThrottled. UCharacterMovementComponent::GetClientNetSendDeltaTime() now uses this time if Acceleration and Velocity are zero, and the control rotation matches the last ack'd control rotation from the server. Also fixed up code default for ClientNetSendMoveDeltaTime to match default INI value. #jira UE-21264 Change 3865325 by Zak.Middleton #ue4 - Fix static analysis warning about possible null PC pointer. #jira none Change 3869828 by Ben.Zeigler #jira UE-54786 Fix it so -cookonthefly cooperates with -iterate by writing out a development asset registry Change 3869969 by mason.seay Character Movement Functional Tests Change 3870099 by Mason.Seay Submitted asset deletes Change 3870105 by mason.seay Removed link to anim blueprint to fix errors Change 3870238 by mason.seay Test map for Async Loading in a Loop Change 3870479 by Ben.Zeigler Add code to check CoreRedirects for SoftObjectPaths when saving or resolving in the editor. This is a bit slow so we don't want to do it on load We don't have any good way to know the type of a path so I check both Object and Class redirectors, which will also pickup Module renames Change 3875224 by mason.seay Functional tests for Event BeginPlay execution order Change 3875409 by mason.seay Optimized and fixed up character movement tests (because a potential bug in FunctionalTestActor is always passing a test when it can fail) Change 3878947 by Mieszko.Zielinski CIS fixes #UE4 Change 3879000 by Mieszko.Zielinski More CIS fixes #UE4 Change 3879139 by Mieszko.Zielinski Even moar CIS fixes #UE4 Change 3879742 by mason.seay Added animation to Nativization Widget asset Change 3880198 by Zak.Middleton #ue4 - CanCrouchInCurrentState() returns false when character capsule is simulating physics. #jira UE-54875 github #4479 Change 3880266 by Zak.Middleton #ue4 - Optimize UpdateCharacterStateBeforeMovement() to do cheaper tests earlier (avoid CanCrouchInCurrentState() unless necessary, now that it tests IsSimulatingPhysics() which is not trivial). #jira UE-54875 Change 3881546 by Mieszko.Zielinski *.Build.cs files clean up - removed redundant dependencies from NavigationSystem and AIModule #UE4 Change 3881547 by Mieszko.Zielinski Removed a bunch of DEPRECATED functions from the new NavigationSystem module #UE4 Removed all deprecates prior 4.15 (picked this one because I do know some licencees are still using it). Change 3881742 by mason.seay Additional crouch test to cover UE-54875 Change 3881794 by Mieszko.Zielinski Fixed a bug in FVisualLoggerHelpers::GetCategories resulting in losing verbosity information #UE4 Change 3884503 by Mieszko.Zielinski Fixed TopDown code template to make it compile after navsys refactor #UE4 #jira UE-55039 Change 3884507 by Mieszko.Zielinski Switched ensures in UNavigationSystemV1:SimpleMoveToX to error-level logs #UE4 It's an error rather than a warning because the functions no longer do anything. Making it work would require a cyclic dependency between NavigationSystem and AIModule. #jira UE-55033 Change 3884594 by Mieszko.Zielinski Added a const FNavigationSystem::GetCurrent version #UE4 lack of it was causing KiteDemo to not compile. Change 3884602 by Mieszko.Zielinski Mac editor compilation fix #UE4 Change 3884615 by Mieszko.Zielinski Fixed FAIDataProviderValue::GetRawValuePtr not being accessible from outside of AIModule #UE4 Change 3885254 by Mieszko.Zielinski Guessfix for UE-55030 #UE4 The name of NavigationSystem module was put in wrong in the IMPLEMENT_MODULE macro #jira 55030 Change 3885286 by Mieszko.Zielinski Changed how NavigationSystem module includes DerivedDataCache module #UE4 #jira UE-55035 Change 3885492 by mason.seay Minor tweaks to animation Change 3885773 by mason.seay Resaving assets to clear out warning Change 3886433 by Mieszko.Zielinski Fixed TP_TopDownBP's player controller BP to not use deprecated nav functions #UE4 #jira UE-55108 Change 3886783 by Mieszko.Zielinski Removed silly inclusion of NavigationSystemTypes.h from NavigationSystemTypes.h #UE4 Change 3887019 by Mieszko.Zielinski Fixed accessing unchecked pointer in ANavigationData::OnNavAreaAdded #UE4 Change 3891031 by Mieszko.Zielinski Fixed missing includes in NavigationSystem.cpp #UE4 Change 3891037 by Mieszko.Zielinski ContentEample's navigation fix #UE4 #jira UE-55109 Change 3891044 by Mieszko.Zielinski PR #4456: Fix bug in UAISense_Sight::OnListenerForgetsActor (Contributed by maxtunel) #UE4 Change 3891598 by mason.seay Resaving assets to clear out "empty engine version" spam Change 3891612 by mason.seay Fixed deprecated Set Text warnings Change 3893334 by Mieszko.Zielinski Fixed a bug in navmesh generation resulting in not removing layers that ended up empty after rebuilding #UE4 #jira UE-55041 Change 3893394 by Mieszko.Zielinski Fixed navmesh debug drawing to properly display octree elements with "per instance transforms" (like instanced SMs) #UE4 Also, added a more detailed debug drawing of navoctree contents (optional, but on by default). Change 3893395 by Mieszko.Zielinski Added a bit of code to navigation system's initialization that checks the enegine ini for sections refering to the moved navigation classes, and complain about it #UE4 The message is printed as an error-level log line and it says what should the offending section be renamed to. Change 3895563 by Dan.Oconnor Mirror 3895535 Append history from previous branches in source control history view #jira none Change 3896930 by Mieszko.Zielinski Added an option to tick navigation system while the game is paused #UE4 Controlled via NavigationSystemV1.bTickWhilePaused, ini- and ProjectSettings-configurable. #jira UE-39275 Change 3897554 by Mieszko.Zielinski Unified how NavMeshRenderingComponent draws navmesh and octree collision's polys #UE4 Change 3897556 by Mieszko.Zielinski Fixed what kind of nav tile bounds we're sending to nav-colliding elements when calling 'per-instance transform' delegate #UE4 #jira UE-45261 Change 3898064 by Mieszko.Zielinski Made SM Editor display AI-navigation-related whenever bHasNavigationData is set to true #UE4 #jira UE-50436 Change 3899004 by Mieszko.Zielinski Fixed UEnvQueryItemType_Actor::GetItemLocation and UEnvQueryItemType_Actor::GetItemRotation to return FAISystem::InvalidLocation and FAISystem::InvalidRotation respectively instead of '0' when hosted Actor ptr is null #UE4 Note for programmers: this changes the default behavior of this edge case. You might want to go through your code and check if you're comparing UEnvQueryItemType_Actor::GetItem*'s results to 0. Change 3901733 by Mieszko.Zielinski Made FEnvQueryInstance::PrepareContext implementations returning vectors and rotators ignore InvalidLocation and InvalidRotation (respectively) #UE4 Change 3901925 by Ben.Zeigler #jira UE-55395 Fix issue where the cooker could load asset registry caches made in -game that do not have dependency data, leading to broken cooks Change 3902166 by Marc.Audy Make ULevel::GetWorld final Change 3902749 by Ben.Zeigler Fix it so pressing refresh button in asset audit window actually refreshes the asset management database Change 3902763 by Ben.Zeigler #jira UE-55407 Fix it so editor tutorials are not cooked unless referenced, by correctly marking soft object paths imported from editor project settings as editor-only Change 3905578 by Phillip.Kavan The UX to add a new parameter on a Blueprint delegate is now at parity with Blueprint functions. #4392 #jira UE-53779 Change 3905848 by Phillip.Kavan First pass of the experimental Blueprint graph bookmarks feature. #jira UE-10052 Change 3906025 by Phillip.Kavan CIS fix. Change 3906195 by Phillip.Kavan Add missing icon file. Change 3906356 by Phillip.Kavan Moved Blueprint bookmarks enable flag into EditorExperimentalSettings for consistency with other options. Change 3910628 by Ben.Zeigler Partial fix for UE-55363, this allows references to ObjectRedirectors to be switched from parent class to a child class on load as this should always be safe This does not actually fix UE-55363 because that case is changing from UMaterial to UMaterialInstanceConstant, and those are siblings instead of parent/child Change 3912470 by Ben.Zeigler #jira UE-55586 Fix issue with saving redirected soft object paths where the export sort could accidentally cause the parent CDO to get modified between name tagging and writing exports, which is unsafe because due to delta serialization it would try to write names that were not previously tagged Change 3913045 by Marc.Audy Fix issues where recursion in to child actors wasn't being handled correctly Change 3913398 by Fred.Kimberley Fixes a misspelled name for one of the classes in the ability system. PR #4430: Fixed spelling of FGameplayAbilityInputBinds. (Contributed by IntegralLee) #github #jira UE-54327 Change 3918016 by Fred.Kimberley Ensure AllocGameplayEffectContext is being used in all cases where FGameplayeEffectContext is being created. #jira UE-52668 PR #4250: Only create FGameplayEffectContext via AbilitySystemGlobals::.AllocGameplayEffectContext (Contributed by slonopotamus) #github Change 3924653 by Mieszko.Zielinski Fixed LoadEngineClass local to UnrealEngine.cpp to check class redirects before falling back to default class instance #UE4 #jira UE-55378 Change 3925614 by Phillip.Kavan Fix ForEachEnum node to skip over hidden enum values in new placements by default. Change summary: - Added FKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() as an internal-only Blueprint node support API. - Modified FForExpandNodeHelper::AllocateDefaultPins() to add a "Skip Hidden" input pin (advanced). Pin default value is false. - Added a UK2Node_ForEachElementInEnum::PostPlacedNewNode() override to set the default value of the "Skip Hidden" input pin to 'true' for all new node placements. - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include additional expansion logic based on the "Skip Hidden" input pin. For new placements (i.e. when the pin defaults to 'true'), an intermediate branch node will now be inserted into the compiled execution sequence to test for "hidden" metadata on the value before executing the loop body. If the input pin is linked, another intermediate branch will be inserted into the execution sequence prior to the "hidden" metadata test. All existing placements of the node will remain as-is after compilation (i.e. no additional intermediate branch nodes will be included in the expansion). #jira UE-34563 Change 3925649 by Marc.Audy Fix up issue post merge from Main with navigation system refactor Change 3926293 by Phillip.Kavan Temp fix to unblock CIS. #jira UE-34563 Change 3926523 by Marc.Audy Ensure that a renamed Actor is in the correct Actors array #jira UE-46718 Change 3928732 by Fred.Kimberley Unshelved from pending changelist '3793298': #jira UE-53136 PR #4287: virtual additions for AttributeSet extendability (Contributed by TWIDan) #github Change 3928780 by Marc.Audy PR #4309: The display names of the functions. (Contributed by SertacOgan) #jira UE-53334 Change 3929730 by Joseph.Wysosky Submitting test assets for the new Blueprint Structure test cases Change 3931919 by Joseph.Wysosky Deleting BasicStructure asset to rest MemberVariables back to default settings Change 3931922 by Joseph.Wysosky Adding BasicStructure test asset back with default members Change 3932083 by Phillip.Kavan Fix Compositing plugin source files to conform to updated relative include path specifications. - Encountered while testing Blueprint nativization of assets with dependencies on Composure/LensDistortion APIs. Change 3932196 by Dan.Oconnor Resetting a property to default now uses the same codepath as assigning the value from the slate control #jira UE-55909 Change 3932408 by Lukasz.Furman fixed behavior tree services attached to task nodes being sometimes recognized as root level #jira nope Change 3932808 by Marc.Audy PR #4083: Change to UK2Node_BaseAsyncTask to have pin tooltips on latent nodes (Contributed by dwrpayne) #jira UE-50871 Change 3934101 by Phillip.Kavan Revise ForEachEnum node expansion logic to exclude hidden values at compile time. Change summary: - Removed UKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() (no longer in use). - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include an enum switch node in the expansion, which will exclude hidden values when constructed. The additional expansion will occur if the enum type contains at least one hidden value. #jira UE-34563 Change 3934106 by Phillip.Kavan Mirrored 4.19 fixes to allow for EngineTest iteration w/ nativization enabled. Change summary: - Mirrored CLs 3876918, 3878968, 3883257, 3885566, 3912161 and 3920519. Change 3934116 by Phillip.Kavan UBT: Explicitly define the DEPRECATED_FORGAME macro only for non-engine modules. Change summary: - Modified UEBuildModule.SetupPrivateCompileEnvironment() to check the 'bTreatAsEngineModule' flag from the rules assembly rather than testing the module's build type. Change 3934382 by Phillip.Kavan Avoid inclusion of monolothic engine header files in nativized Blueprint codegen. Change 3936387 by Mieszko.Zielinski Added a flag to NavModifierComponent to control whether agent's height is being used while expadning modifier's bounds during navmesh generation #UE4 Change 3936905 by Ben.Marsh Disable IncludeTool warning for DEPRECATED_FORGAME macro; we expect this to be different for game modules. Change 3940537 by Marc.Audy Don't allow maps, sets, or arrays with an actor inner type in user defined structs to select an actor from the currently open level as default value. #jira UE-55938 Change 3940901 by Marc.Audy Properly name CVar global to reflect what it is for Change 3943043 by Marc.Audy Fix world context functions not being able to be used in CheatManager derived blueprints #jira UE-55787 Change 3943075 by Mieszko.Zielinski Moved path-following related delegats' interface from NavigationSystemBase over to a new IPathFollowingManagerInterface #UE4 Change 3943089 by Mieszko.Zielinski Fixed how WorldSettings.NavigationSystemConfig gets created #UE4 Made it so that there's always a NavigationSystemConfig instance present, but added a 'Null' config - this was required due to issues with creation/serialization of instanced subobjects. The change required adding copying constructors to FNavAgentProperties and FNavDataConfig. Also, fixed FNavAgentProperties.IsEquivalent to be symetrical. Change 3943225 by Marc.Audy Fix spelling of Implements Change 3950813 by Marc.Audy Include owner in attachment mismatch ensure #jira UE-56148 Change 3950996 by Marc.Audy Fix cases where bit packed properties used the entire byte not just the bit when interacting with boolean arrays #jira UE-55482 Change 3952086 by Marc.Audy PR #4483: Add Missing Radial Damage Multicast Delegate (Contributed by error454) #jira UE-54974 Change 3952720 by Marc.Audy PR #4575: Check if *Pawn* is a null Pointer (Contributed by dani9bma) #jira UE-56248 Change 3952804 by Richard.Hinckley Changes to BP API export commandlet to support better plugin exporting. Contributed by Harry Wang of Google. Change 3952962 by Marc.Audy UHT now validates that ExpandEnumAsExecs references a valid parameter to the function. #jira UE-49610 Change 3952977 by Phillip.Kavan Fix EDL cycle at load time in nativized cooked builds when a circular dependency exists between converted and unconverted assets. Change summary: - Added FGatherConvertedClassDependencies::MarkUnconvertedClassAsNecessary(). - Modified FFindAssetsToInclude::MaybeIncludeObjectAsDependency() to mark unconverted BPGCs (e.g. DOBPs) as necessary for conversion when the potential for a circular dependency exists so that we generate stub wrappers rather than depend on them directly. - Fixed a few typos in existing API names. #jira UE-48233 Change 3953658 by Marc.Audy (4.19.1) Fix inserting a reroute node causing connections to break on a GetClassDefaults node #jira UE-56270 Change 3954727 by Marc.Audy Add friendly name to custom version mismatch message Change 3954906 by Marc.Audy (4.19.1) Fix crash when undoing changes related to reroute nodes connected to a GetClassDefaults node #jira UE-56313 Change 3954997 by Marc.Audy Ensure and return null if GetOuter<WithinClass> is called on a CDO for uclasses declared as within another so we don't get a UPackage c-style cast to the expected outer type Change 3955091 by Marc.Audy Do not register subcomponents that are not auto register #jira UE-52878 Change 3955943 by Marc.Audy Make AbilitySystemComponent pass parameters by const& instead of ref as no state is being changed Change 3956185 by Zak.Middleton #ue4 - Fix Characters using scoped movement updates (the default) not visually rotating when rotated at small rates at high framerate. This was caused by FScopedMovementUpdate::IsTransformDirty() using a larger FTransform comparison tolerance than USceneComponent::UpdateComponentToWorldWithParent(). #jira none Change 3958102 by Marc.Audy Clean out dead code path from k2node_select Select node now resets pins to wildcard if none of the pins are in use Change 3958113 by Lukasz.Furman added OnSearchStart call to root level behavior tree services #jira UE-56257 Change 3958361 by Marc.Audy Fix literal input pins on select being set to wildcard during compilation Change 3961148 by Dan.Oconnor Mirror 3961139 from Release 4.19 Fix for placeholder objects being left behind when loading certain UMG assets - this could causea crash when loading UMG assets #jira UE-55742 Change 3961640 by Marc.Audy Select node now displays Add Pin button Undo of changing select node index type now works correctly. Connections to option pins now maintained across change of index pin type #jira UE-20742 Change 3962262 by Marc.Audy Display "Object Reference" instead of "Object Object Reference" and "Soft Object Reference" instead of "Object Soft Object Reference" Change 3962795 by Phillip.Kavan Fix for a crash when cooking with Blueprint nativization enabled after encountering a nested instanced editor-only default subobject inherited from a native C++ base class. - Mirrored from //UE4/Release-4.19 (3962782) #jira UE-56316 Change 3962991 by Marc.Audy Modify Negate/Increment/Decrement Int/Float so that the output is always the desired result even if a non-mutable pin is passed in. Note that this can mean the result being returned and the value of the pin passed in if queried again will not be the same (in the case of pure nodes). #jira UE-54807 Change 3963114 by Marc.Audy Fix ensures/crash as a result of UClass expecting to be able to access the UPackage of CDOs via the GetOuterUPackage call. Change 3963427 by Marc.Audy Fix initialization order Initialize bUseBackwardsCompatForEmptyAutogeneratedValue Change 3963781 by Marc.Audy Fix without editor compiles Change 3964576 by Marc.Audy PR #4599: : Working category for timelines (Contributed by projectgheist) #jira UE-56460 #jira UE-26053 Change 3964782 by Dan.Oconnor Mirror 3964772 from Release 4.19 Fix crash when force deleting certain blueprints, we can only check for authoritativeness while reinstancing #jira UE-56447 Change 3965156 by Mieszko.Zielinski PR #4592: Visual Logger optimization to fix rapid FPS drop when many items are hidden (Contributed by tstaples) #jira UE-56435 Change 3965173 by Marc.Audy (4.19.1) Fix incorrectly switching a cooling down tick to be an enabled tick when marking it enabled. #jira UE-56431 Change 3966117 by Marc.Audy Fix select nodes inside macros using wildcard array inputs having issues resolving type. #jira UE-56484 Change 3878901 by Mieszko.Zielinski NavigationSystem's code refactored out of the engine and into a new separate module #UE4 The CL contains required changes to all of our internal projects. Fortnite and Paragon have been tested, while the rest have been only compiled. Change 3879409 by Mieszko.Zielinski Further fallout fixes after ripping out NavigationSystem out of the engine #UE4 - Fixed bad ini redirects (had NavigationSystem.NavigationSystem instead of NavigationSystem.NavigationSystemV1) - Added missing FNavigationSystem::GetDefaultNavDataClass binding (resulting in QAGame's func tests failing) Change 3897655 by Ben.Zeigler #jira UE-55211 Fix it so literal soft object pins on blueprint nodes get correctly cooked/referenced It now sets the thread context to skip internal serialize and calls the archive's serialize function instead of bypassing it, which allows it to pick up references Change 3962780 by Marc.Audy When preventing a split pin from being orphaned, all sub pins must also be prevented. #jira UE-56328 Repack members of UEdGraphPin to avoid wasted space (saves 16bytes) [CL 3967553 by Marc Audy in Main branch]
2018-03-27 14:27:07 -04:00
#include "NavigationSystem.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
#include "Interfaces/Interface_CollisionDataProvider.h"
#include "Engine/StaticMesh.h"
#include "SceneManagement.h"
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3967517) #rb none #lockdown Nick.Penwarden #rnx ============================ MAJOR FEATURES & CHANGES ============================ Change 3804281 by Fred.Kimberley Improve contrast on watches in blueprints. Change 3804322 by Fred.Kimberley First pass at adding a watch window for blueprint debugging. Change 3804737 by mason.seay Added some Descriptions to tests that didn't have any, and fixed some typos Change 3806103 by mason.seay Moved and Renamed Timers test map and content appropriately Change 3806164 by Fred.Kimberley Add missing property types to GetDebugInfoInternal. #jira UE-53355 Change 3806617 by Dan.Oconnor Function Terminator (and derived types) now use FMemberReference instead of a UClass/FName pair. This fixes various bugs when resolving the UFunction referenced by the function terminator #jira UE-31754, UE-42431, UE-53315, UE-53172 Change 3808541 by Fred.Kimberley Add support for redirecting user defined enums. This is in response to the following UDN thread: https://udn.unrealengine.com/questions/404141/is-is-possible-to-create-a-redirector-from-a-bluep.html Change 3808565 by mason.seay Added a few more struct tests Change 3809840 by mason.seay Renamed CharacterMovement.umap to CharacterCollision. Fixed up content to reflect this change. Change 3809847 by mason.seay Added Object Timer tests. Fixed up existing timer test to remove delay dependency Change 3811704 by Ben.Zeigler Fix issue where identical enum redirects registered to different initial names would throw an incorrect error, it's fine if the value change maps are identical Change 3811946 by Ben.Zeigler #jira UE-53511 Fix it so it is possible to set a user defined struct value back to it's default. The UDS hack in PropertyValueToString is no longer needed, but this could affect some other user struct editor operations Change 3812061 by Dan.Oconnor Stepping over or in to nodes that are expanded at compile time (e.g. event nodes, spawn actor nodes) no longer requires multiple 'steps' #jira UE-52854 Change 3812259 by Dan.Oconnor Fix asset broken by removal of an unkown enum #jira UE-51419 Change 3812904 by Ben.Zeigler Make ResolveRedirects on StreamableManager public as it can be used to validate things Change 3812958 by Ben.Zeigler #jira UE-52977 Fix crashes when binding blueprint editor commands to keys and using from invalid contexts Change 3812975 by Mieszko.Zielinski Added contraptions to catch a rare eidtor-time EQS crash #UE4 #jira UE-53468 Change 3818530 by Phillip.Kavan Fix incorrect access to nested instanced subobjects in nativized Blueprint ctor codegen. Change summary: - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to properly reference the outer and check ptr validity when creating/obtaining nested default subobjects. - Modified FEmitDefaultValueHelper::HandleClassSubobject() to better guard against code generation based on an invalid local variable name. #jira UE-52167 Change 3819733 by Mieszko.Zielinski Marked UAISenseConfig_Blueprint and UAISense_Blueprint as hidedropdown #UE4 #jira UE-15089 Change 3821776 by Marc.Audy Remove redundent code in SpawnActorFromClass that already exists in ConstructObjectFromClass parent class Change 3823851 by mason.seay Moved and renamed blueprints used for Object Reference testing Change 3824165 by Phillip.Kavan Ensure that subobject class types are constructed prior to accessing a subobject CDO in a nativized Blueprint class's generated ctor at runtime. Change summary: - Modified FFakeImportTableHelper to tag subobject class types as a preload dependency of the outer converted Blueprint class type and not of the CDO. #jira UE-53111 Change 3830309 by mason.seay Created Literal Gameplay Tag Container test Change 3830562 by Phillip.Kavan Blueprint nativization bug fixes (reviewed/taken from PR). Change summary: - Modified FSafeContextScopedEmitter::ValidationChain() to ensure that generated code calls the global IsValid() utility function on objects. - Modified FBlueprintCompilerCppBackend::EmitCreateArrayStatement() to generate a proper cast on MakeArray node inputs for enum class types. - Modified FBlueprintCompilerCppBackend::EnimCallStatementInner() to more correctly identify an interface function call site. - Modified FEmitHelper::GenerateAutomaticCast() to properly handle automatic casts of enum arrays. - (Modified from PR source) Added new FComponentDataUtils statics to consolidate custom init code generation for converted special-case component types (e.g. BodyInstance). Ties native component DSOs to the same pre/post as converted non-native component templates around the OuterGenerate() loop. - Modified FExposeOnSpawnValidator::IsSupported() to include CPT_SoftObjectReference property types. - Modified UBlueprintGeneratedClass::CheckAndApplyComponentTemplateOverrides() to no longer break out of the loop before finding additional ICH override record matches. #4202 #jira UE-52188 Change 3830579 by Fred.Kimberley Add support for turning off multiple watches at once in the watch window. #jira UE-53852 Change 3836047 by Zak.Middleton #ue4 - Dev test maps for overlaps perf tests. Change 3836768 by Phillip.Kavan Fix for a build failure that could occur with Blueprint nativization enabled and EDL disabled. This was a regression introduced in 4.18. Change summary: - Modified FEmitDefaultValueHelper::AddStaticFunctionsForDependencies() to emit the correct signature for constructing FBlueprintDependencyData elements when the EDL boot time optimization is disabled. #jira UE-53908 Change 3838085 by mason.seay Functional tests around basic blueprint functions Change 3840489 by Ben.Zeigler #jira UE-31662 Fix regression with renaming parent inherited function. It was not correctly searching the parent's skeleton class during the child's recompile so it was erroneously detecting the parent function as missing Change 3840648 by mason.seay Updated Descriptions on tests Change 3842914 by Ben.Zeigler Improve comments around stremable handle cancel/release Change 3850413 by Ben.Zeigler Fix asset registry memory reporting, track some newer fields and correctly report the state size instead of static size twice Copy of CL #3849610 Change 3850426 by Ben.Zeigler Reduce asset registry memory in cooked build by stripping out searchable names and empty dependency nodes by default Add option to strip dependency data for asset data with no tags, this was always true before but isn't necessarily safe Copy of CL #3850389 Change 3853449 by Phillip.Kavan Fix a scoping issue for local instanced subobject references in nativized Blueprint C++ code. Also, don't emit redundant assignment statements for instanced subobject reference properties. Change summary: - Consolidated FComponentDataUtils into FDefaultSubobjectData and extended FNonativeComponentData from it in order to handle both native & non-native DSO initialization codegen through a more common interface. - Exposed FEmitDefaultValueHelper::HandleInstancedSubobject() as a public API and added a 'SubobjectData' parameter to allow initialization codegen to be deferred until after all default subobjects have been mapped to local variables within the current scope. - Modified FEmitDefaultValueHelper::GenerateConstructor() to first map all default subobjects to local variables and then emit any delta initialization code for property values. - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to return an empty string for an instanced reference to a default subobject. This allows us to avoid emitting initialization statements to unnecessarily reassign instances back to the same property. - Modified FEmitDefaultValueHelper::InnerGenerate() to better handle instanced references to default subobjects, ensuring that we don't emit unnecessary assignment statements and array initialization code to the converted class constructor in C++. - Fixed a few typos. #jira UE-53960 Change 3853465 by Phillip.Kavan Fix plugin module C++ source template to conform to recent public include path changes. Change 3857599 by Marc.Audy PR #4438: UE-54281: Make None a valid default value to select (Contributed by projectgheist) #jira UE-54281 #jira UE-54399 Change 3863259 by Zak.Middleton #ue4 - Save bandwidth for replicated characters by only replicating 4 byte timestamp value to clients if it's actually needed for Linear smoothing. Added option to always replicate the timestamp ("bNetworkAlwaysReplicateTransformUpdateTimestamp", default off), in case users still want this timestamp for some reason, or if smoothing mode changes dynamically and the server won't know. #jira UE-46293 Change 3863491 by Zak.Middleton #ue4 - Reduce network RPC overhead for players that are not moving. Added ClientNetSendMoveDeltaTimeStationary (default 12Hz) to supplement existing ClientNetSendMoveDeltaTime and ClientNetSendMoveDeltaTimeThrottled. UCharacterMovementComponent::GetClientNetSendDeltaTime() now uses this time if Acceleration and Velocity are zero, and the control rotation matches the last ack'd control rotation from the server. Also fixed up code default for ClientNetSendMoveDeltaTime to match default INI value. #jira UE-21264 Change 3865325 by Zak.Middleton #ue4 - Fix static analysis warning about possible null PC pointer. #jira none Change 3869828 by Ben.Zeigler #jira UE-54786 Fix it so -cookonthefly cooperates with -iterate by writing out a development asset registry Change 3869969 by mason.seay Character Movement Functional Tests Change 3870099 by Mason.Seay Submitted asset deletes Change 3870105 by mason.seay Removed link to anim blueprint to fix errors Change 3870238 by mason.seay Test map for Async Loading in a Loop Change 3870479 by Ben.Zeigler Add code to check CoreRedirects for SoftObjectPaths when saving or resolving in the editor. This is a bit slow so we don't want to do it on load We don't have any good way to know the type of a path so I check both Object and Class redirectors, which will also pickup Module renames Change 3875224 by mason.seay Functional tests for Event BeginPlay execution order Change 3875409 by mason.seay Optimized and fixed up character movement tests (because a potential bug in FunctionalTestActor is always passing a test when it can fail) Change 3878947 by Mieszko.Zielinski CIS fixes #UE4 Change 3879000 by Mieszko.Zielinski More CIS fixes #UE4 Change 3879139 by Mieszko.Zielinski Even moar CIS fixes #UE4 Change 3879742 by mason.seay Added animation to Nativization Widget asset Change 3880198 by Zak.Middleton #ue4 - CanCrouchInCurrentState() returns false when character capsule is simulating physics. #jira UE-54875 github #4479 Change 3880266 by Zak.Middleton #ue4 - Optimize UpdateCharacterStateBeforeMovement() to do cheaper tests earlier (avoid CanCrouchInCurrentState() unless necessary, now that it tests IsSimulatingPhysics() which is not trivial). #jira UE-54875 Change 3881546 by Mieszko.Zielinski *.Build.cs files clean up - removed redundant dependencies from NavigationSystem and AIModule #UE4 Change 3881547 by Mieszko.Zielinski Removed a bunch of DEPRECATED functions from the new NavigationSystem module #UE4 Removed all deprecates prior 4.15 (picked this one because I do know some licencees are still using it). Change 3881742 by mason.seay Additional crouch test to cover UE-54875 Change 3881794 by Mieszko.Zielinski Fixed a bug in FVisualLoggerHelpers::GetCategories resulting in losing verbosity information #UE4 Change 3884503 by Mieszko.Zielinski Fixed TopDown code template to make it compile after navsys refactor #UE4 #jira UE-55039 Change 3884507 by Mieszko.Zielinski Switched ensures in UNavigationSystemV1:SimpleMoveToX to error-level logs #UE4 It's an error rather than a warning because the functions no longer do anything. Making it work would require a cyclic dependency between NavigationSystem and AIModule. #jira UE-55033 Change 3884594 by Mieszko.Zielinski Added a const FNavigationSystem::GetCurrent version #UE4 lack of it was causing KiteDemo to not compile. Change 3884602 by Mieszko.Zielinski Mac editor compilation fix #UE4 Change 3884615 by Mieszko.Zielinski Fixed FAIDataProviderValue::GetRawValuePtr not being accessible from outside of AIModule #UE4 Change 3885254 by Mieszko.Zielinski Guessfix for UE-55030 #UE4 The name of NavigationSystem module was put in wrong in the IMPLEMENT_MODULE macro #jira 55030 Change 3885286 by Mieszko.Zielinski Changed how NavigationSystem module includes DerivedDataCache module #UE4 #jira UE-55035 Change 3885492 by mason.seay Minor tweaks to animation Change 3885773 by mason.seay Resaving assets to clear out warning Change 3886433 by Mieszko.Zielinski Fixed TP_TopDownBP's player controller BP to not use deprecated nav functions #UE4 #jira UE-55108 Change 3886783 by Mieszko.Zielinski Removed silly inclusion of NavigationSystemTypes.h from NavigationSystemTypes.h #UE4 Change 3887019 by Mieszko.Zielinski Fixed accessing unchecked pointer in ANavigationData::OnNavAreaAdded #UE4 Change 3891031 by Mieszko.Zielinski Fixed missing includes in NavigationSystem.cpp #UE4 Change 3891037 by Mieszko.Zielinski ContentEample's navigation fix #UE4 #jira UE-55109 Change 3891044 by Mieszko.Zielinski PR #4456: Fix bug in UAISense_Sight::OnListenerForgetsActor (Contributed by maxtunel) #UE4 Change 3891598 by mason.seay Resaving assets to clear out "empty engine version" spam Change 3891612 by mason.seay Fixed deprecated Set Text warnings Change 3893334 by Mieszko.Zielinski Fixed a bug in navmesh generation resulting in not removing layers that ended up empty after rebuilding #UE4 #jira UE-55041 Change 3893394 by Mieszko.Zielinski Fixed navmesh debug drawing to properly display octree elements with "per instance transforms" (like instanced SMs) #UE4 Also, added a more detailed debug drawing of navoctree contents (optional, but on by default). Change 3893395 by Mieszko.Zielinski Added a bit of code to navigation system's initialization that checks the enegine ini for sections refering to the moved navigation classes, and complain about it #UE4 The message is printed as an error-level log line and it says what should the offending section be renamed to. Change 3895563 by Dan.Oconnor Mirror 3895535 Append history from previous branches in source control history view #jira none Change 3896930 by Mieszko.Zielinski Added an option to tick navigation system while the game is paused #UE4 Controlled via NavigationSystemV1.bTickWhilePaused, ini- and ProjectSettings-configurable. #jira UE-39275 Change 3897554 by Mieszko.Zielinski Unified how NavMeshRenderingComponent draws navmesh and octree collision's polys #UE4 Change 3897556 by Mieszko.Zielinski Fixed what kind of nav tile bounds we're sending to nav-colliding elements when calling 'per-instance transform' delegate #UE4 #jira UE-45261 Change 3898064 by Mieszko.Zielinski Made SM Editor display AI-navigation-related whenever bHasNavigationData is set to true #UE4 #jira UE-50436 Change 3899004 by Mieszko.Zielinski Fixed UEnvQueryItemType_Actor::GetItemLocation and UEnvQueryItemType_Actor::GetItemRotation to return FAISystem::InvalidLocation and FAISystem::InvalidRotation respectively instead of '0' when hosted Actor ptr is null #UE4 Note for programmers: this changes the default behavior of this edge case. You might want to go through your code and check if you're comparing UEnvQueryItemType_Actor::GetItem*'s results to 0. Change 3901733 by Mieszko.Zielinski Made FEnvQueryInstance::PrepareContext implementations returning vectors and rotators ignore InvalidLocation and InvalidRotation (respectively) #UE4 Change 3901925 by Ben.Zeigler #jira UE-55395 Fix issue where the cooker could load asset registry caches made in -game that do not have dependency data, leading to broken cooks Change 3902166 by Marc.Audy Make ULevel::GetWorld final Change 3902749 by Ben.Zeigler Fix it so pressing refresh button in asset audit window actually refreshes the asset management database Change 3902763 by Ben.Zeigler #jira UE-55407 Fix it so editor tutorials are not cooked unless referenced, by correctly marking soft object paths imported from editor project settings as editor-only Change 3905578 by Phillip.Kavan The UX to add a new parameter on a Blueprint delegate is now at parity with Blueprint functions. #4392 #jira UE-53779 Change 3905848 by Phillip.Kavan First pass of the experimental Blueprint graph bookmarks feature. #jira UE-10052 Change 3906025 by Phillip.Kavan CIS fix. Change 3906195 by Phillip.Kavan Add missing icon file. Change 3906356 by Phillip.Kavan Moved Blueprint bookmarks enable flag into EditorExperimentalSettings for consistency with other options. Change 3910628 by Ben.Zeigler Partial fix for UE-55363, this allows references to ObjectRedirectors to be switched from parent class to a child class on load as this should always be safe This does not actually fix UE-55363 because that case is changing from UMaterial to UMaterialInstanceConstant, and those are siblings instead of parent/child Change 3912470 by Ben.Zeigler #jira UE-55586 Fix issue with saving redirected soft object paths where the export sort could accidentally cause the parent CDO to get modified between name tagging and writing exports, which is unsafe because due to delta serialization it would try to write names that were not previously tagged Change 3913045 by Marc.Audy Fix issues where recursion in to child actors wasn't being handled correctly Change 3913398 by Fred.Kimberley Fixes a misspelled name for one of the classes in the ability system. PR #4430: Fixed spelling of FGameplayAbilityInputBinds. (Contributed by IntegralLee) #github #jira UE-54327 Change 3918016 by Fred.Kimberley Ensure AllocGameplayEffectContext is being used in all cases where FGameplayeEffectContext is being created. #jira UE-52668 PR #4250: Only create FGameplayEffectContext via AbilitySystemGlobals::.AllocGameplayEffectContext (Contributed by slonopotamus) #github Change 3924653 by Mieszko.Zielinski Fixed LoadEngineClass local to UnrealEngine.cpp to check class redirects before falling back to default class instance #UE4 #jira UE-55378 Change 3925614 by Phillip.Kavan Fix ForEachEnum node to skip over hidden enum values in new placements by default. Change summary: - Added FKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() as an internal-only Blueprint node support API. - Modified FForExpandNodeHelper::AllocateDefaultPins() to add a "Skip Hidden" input pin (advanced). Pin default value is false. - Added a UK2Node_ForEachElementInEnum::PostPlacedNewNode() override to set the default value of the "Skip Hidden" input pin to 'true' for all new node placements. - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include additional expansion logic based on the "Skip Hidden" input pin. For new placements (i.e. when the pin defaults to 'true'), an intermediate branch node will now be inserted into the compiled execution sequence to test for "hidden" metadata on the value before executing the loop body. If the input pin is linked, another intermediate branch will be inserted into the execution sequence prior to the "hidden" metadata test. All existing placements of the node will remain as-is after compilation (i.e. no additional intermediate branch nodes will be included in the expansion). #jira UE-34563 Change 3925649 by Marc.Audy Fix up issue post merge from Main with navigation system refactor Change 3926293 by Phillip.Kavan Temp fix to unblock CIS. #jira UE-34563 Change 3926523 by Marc.Audy Ensure that a renamed Actor is in the correct Actors array #jira UE-46718 Change 3928732 by Fred.Kimberley Unshelved from pending changelist '3793298': #jira UE-53136 PR #4287: virtual additions for AttributeSet extendability (Contributed by TWIDan) #github Change 3928780 by Marc.Audy PR #4309: The display names of the functions. (Contributed by SertacOgan) #jira UE-53334 Change 3929730 by Joseph.Wysosky Submitting test assets for the new Blueprint Structure test cases Change 3931919 by Joseph.Wysosky Deleting BasicStructure asset to rest MemberVariables back to default settings Change 3931922 by Joseph.Wysosky Adding BasicStructure test asset back with default members Change 3932083 by Phillip.Kavan Fix Compositing plugin source files to conform to updated relative include path specifications. - Encountered while testing Blueprint nativization of assets with dependencies on Composure/LensDistortion APIs. Change 3932196 by Dan.Oconnor Resetting a property to default now uses the same codepath as assigning the value from the slate control #jira UE-55909 Change 3932408 by Lukasz.Furman fixed behavior tree services attached to task nodes being sometimes recognized as root level #jira nope Change 3932808 by Marc.Audy PR #4083: Change to UK2Node_BaseAsyncTask to have pin tooltips on latent nodes (Contributed by dwrpayne) #jira UE-50871 Change 3934101 by Phillip.Kavan Revise ForEachEnum node expansion logic to exclude hidden values at compile time. Change summary: - Removed UKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() (no longer in use). - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include an enum switch node in the expansion, which will exclude hidden values when constructed. The additional expansion will occur if the enum type contains at least one hidden value. #jira UE-34563 Change 3934106 by Phillip.Kavan Mirrored 4.19 fixes to allow for EngineTest iteration w/ nativization enabled. Change summary: - Mirrored CLs 3876918, 3878968, 3883257, 3885566, 3912161 and 3920519. Change 3934116 by Phillip.Kavan UBT: Explicitly define the DEPRECATED_FORGAME macro only for non-engine modules. Change summary: - Modified UEBuildModule.SetupPrivateCompileEnvironment() to check the 'bTreatAsEngineModule' flag from the rules assembly rather than testing the module's build type. Change 3934382 by Phillip.Kavan Avoid inclusion of monolothic engine header files in nativized Blueprint codegen. Change 3936387 by Mieszko.Zielinski Added a flag to NavModifierComponent to control whether agent's height is being used while expadning modifier's bounds during navmesh generation #UE4 Change 3936905 by Ben.Marsh Disable IncludeTool warning for DEPRECATED_FORGAME macro; we expect this to be different for game modules. Change 3940537 by Marc.Audy Don't allow maps, sets, or arrays with an actor inner type in user defined structs to select an actor from the currently open level as default value. #jira UE-55938 Change 3940901 by Marc.Audy Properly name CVar global to reflect what it is for Change 3943043 by Marc.Audy Fix world context functions not being able to be used in CheatManager derived blueprints #jira UE-55787 Change 3943075 by Mieszko.Zielinski Moved path-following related delegats' interface from NavigationSystemBase over to a new IPathFollowingManagerInterface #UE4 Change 3943089 by Mieszko.Zielinski Fixed how WorldSettings.NavigationSystemConfig gets created #UE4 Made it so that there's always a NavigationSystemConfig instance present, but added a 'Null' config - this was required due to issues with creation/serialization of instanced subobjects. The change required adding copying constructors to FNavAgentProperties and FNavDataConfig. Also, fixed FNavAgentProperties.IsEquivalent to be symetrical. Change 3943225 by Marc.Audy Fix spelling of Implements Change 3950813 by Marc.Audy Include owner in attachment mismatch ensure #jira UE-56148 Change 3950996 by Marc.Audy Fix cases where bit packed properties used the entire byte not just the bit when interacting with boolean arrays #jira UE-55482 Change 3952086 by Marc.Audy PR #4483: Add Missing Radial Damage Multicast Delegate (Contributed by error454) #jira UE-54974 Change 3952720 by Marc.Audy PR #4575: Check if *Pawn* is a null Pointer (Contributed by dani9bma) #jira UE-56248 Change 3952804 by Richard.Hinckley Changes to BP API export commandlet to support better plugin exporting. Contributed by Harry Wang of Google. Change 3952962 by Marc.Audy UHT now validates that ExpandEnumAsExecs references a valid parameter to the function. #jira UE-49610 Change 3952977 by Phillip.Kavan Fix EDL cycle at load time in nativized cooked builds when a circular dependency exists between converted and unconverted assets. Change summary: - Added FGatherConvertedClassDependencies::MarkUnconvertedClassAsNecessary(). - Modified FFindAssetsToInclude::MaybeIncludeObjectAsDependency() to mark unconverted BPGCs (e.g. DOBPs) as necessary for conversion when the potential for a circular dependency exists so that we generate stub wrappers rather than depend on them directly. - Fixed a few typos in existing API names. #jira UE-48233 Change 3953658 by Marc.Audy (4.19.1) Fix inserting a reroute node causing connections to break on a GetClassDefaults node #jira UE-56270 Change 3954727 by Marc.Audy Add friendly name to custom version mismatch message Change 3954906 by Marc.Audy (4.19.1) Fix crash when undoing changes related to reroute nodes connected to a GetClassDefaults node #jira UE-56313 Change 3954997 by Marc.Audy Ensure and return null if GetOuter<WithinClass> is called on a CDO for uclasses declared as within another so we don't get a UPackage c-style cast to the expected outer type Change 3955091 by Marc.Audy Do not register subcomponents that are not auto register #jira UE-52878 Change 3955943 by Marc.Audy Make AbilitySystemComponent pass parameters by const& instead of ref as no state is being changed Change 3956185 by Zak.Middleton #ue4 - Fix Characters using scoped movement updates (the default) not visually rotating when rotated at small rates at high framerate. This was caused by FScopedMovementUpdate::IsTransformDirty() using a larger FTransform comparison tolerance than USceneComponent::UpdateComponentToWorldWithParent(). #jira none Change 3958102 by Marc.Audy Clean out dead code path from k2node_select Select node now resets pins to wildcard if none of the pins are in use Change 3958113 by Lukasz.Furman added OnSearchStart call to root level behavior tree services #jira UE-56257 Change 3958361 by Marc.Audy Fix literal input pins on select being set to wildcard during compilation Change 3961148 by Dan.Oconnor Mirror 3961139 from Release 4.19 Fix for placeholder objects being left behind when loading certain UMG assets - this could causea crash when loading UMG assets #jira UE-55742 Change 3961640 by Marc.Audy Select node now displays Add Pin button Undo of changing select node index type now works correctly. Connections to option pins now maintained across change of index pin type #jira UE-20742 Change 3962262 by Marc.Audy Display "Object Reference" instead of "Object Object Reference" and "Soft Object Reference" instead of "Object Soft Object Reference" Change 3962795 by Phillip.Kavan Fix for a crash when cooking with Blueprint nativization enabled after encountering a nested instanced editor-only default subobject inherited from a native C++ base class. - Mirrored from //UE4/Release-4.19 (3962782) #jira UE-56316 Change 3962991 by Marc.Audy Modify Negate/Increment/Decrement Int/Float so that the output is always the desired result even if a non-mutable pin is passed in. Note that this can mean the result being returned and the value of the pin passed in if queried again will not be the same (in the case of pure nodes). #jira UE-54807 Change 3963114 by Marc.Audy Fix ensures/crash as a result of UClass expecting to be able to access the UPackage of CDOs via the GetOuterUPackage call. Change 3963427 by Marc.Audy Fix initialization order Initialize bUseBackwardsCompatForEmptyAutogeneratedValue Change 3963781 by Marc.Audy Fix without editor compiles Change 3964576 by Marc.Audy PR #4599: : Working category for timelines (Contributed by projectgheist) #jira UE-56460 #jira UE-26053 Change 3964782 by Dan.Oconnor Mirror 3964772 from Release 4.19 Fix crash when force deleting certain blueprints, we can only check for authoritativeness while reinstancing #jira UE-56447 Change 3965156 by Mieszko.Zielinski PR #4592: Visual Logger optimization to fix rapid FPS drop when many items are hidden (Contributed by tstaples) #jira UE-56435 Change 3965173 by Marc.Audy (4.19.1) Fix incorrectly switching a cooling down tick to be an enabled tick when marking it enabled. #jira UE-56431 Change 3966117 by Marc.Audy Fix select nodes inside macros using wildcard array inputs having issues resolving type. #jira UE-56484 Change 3878901 by Mieszko.Zielinski NavigationSystem's code refactored out of the engine and into a new separate module #UE4 The CL contains required changes to all of our internal projects. Fortnite and Paragon have been tested, while the rest have been only compiled. Change 3879409 by Mieszko.Zielinski Further fallout fixes after ripping out NavigationSystem out of the engine #UE4 - Fixed bad ini redirects (had NavigationSystem.NavigationSystem instead of NavigationSystem.NavigationSystemV1) - Added missing FNavigationSystem::GetDefaultNavDataClass binding (resulting in QAGame's func tests failing) Change 3897655 by Ben.Zeigler #jira UE-55211 Fix it so literal soft object pins on blueprint nodes get correctly cooked/referenced It now sets the thread context to skip internal serialize and calls the archive's serialize function instead of bypassing it, which allows it to pick up references Change 3962780 by Marc.Audy When preventing a split pin from being orphaned, all sub pins must also be prevented. #jira UE-56328 Repack members of UEdGraphPin to avoid wasted space (saves 16bytes) [CL 3967553 by Marc Audy in Main branch]
2018-03-27 14:27:07 -04:00
#include "NavAreas/NavArea.h"
#include "AI/NavigationSystemHelpers.h"
#include "DerivedDataPluginInterface.h"
#include "DerivedDataCacheInterface.h"
#include "PhysicsEngine/BodySetup.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
#include "ProfilingDebugging/CookStats.h"
#include "Interfaces/ITargetPlatform.h"
#include "CoreGlobals.h"
#include UE_INLINE_GENERATED_CPP_BY_NAME(NavCollision)
#if WITH_EDITOR
#include "DeviceProfiles/DeviceProfile.h"
#include "DeviceProfiles/DeviceProfileManager.h"
#endif // WITH_EDITOR
static TAutoConsoleVariable<int32> CVarNavCollisionAvailable(
TEXT("ai.NavCollisionAvailable"),
1,
TEXT("If set to 0 NavCollision won't be cooked and will be unavailable at runtime.\n"),
/*ECVF_ReadOnly | */ECVF_Scalability);
Copying //UE4/Orion-Staging to //UE4/Dev-Main (//UE4/Orion-Staging @ 2979119, //Orion/Dev-General @2976565) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2976484 on 2016/05/12 by Jason.Bestimt #ROBOMERGE-AUTHOR: nick.atamas Added queueing to HUD Alerts so they don't clobber each other. Added input visualization so that keys show up in game. SRichTextBlock/UOrionRichTextBlock now have a MinDesiredWidth #test PIE #ROBOMERGE-SOURCE: CL 2976474 in //Orion/Release-0.26/... via CL 2976481 via CL 2976482 via CL 2976483 #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2976256 on 2016/05/12 by Zak.Middleton #ue4 - Fix for shipping build. #tests compiled Change 2976205 on 2016/05/12 by Zak.Middleton #ue4 - (Merge 2957866) Add MaxDepenetration for characters against geometry and pawns. #tests MP PIE PlayGo (Merging CL 2957866 using Framework->DevGeneral) Change 2976166 on 2016/05/12 by Daniel.Lamb Cooking optimziation to unsolicited markup saves 150 seconds paragon cook time. #test Cook paragon Change 2976161 on 2016/05/12 by Zak.Middleton #ue4 - Make sure LastUpdateLocation, Rotation, and Velocity are updated on client and server error corrections. ForcePositionUpdate should call PerformMovement regardless of velocity (there may be root motion or gravity effects). #tests PIE MP w/ real-world networking Change 2976092 on 2016/05/12 by Mieszko.Zielinski Modified adding dynamic subtrees to BT component so that we get a log info if it fails #UE4 #test golden path Change 2976001 on 2016/05/12 by Robert.Manuszewski Don't log to memory on dedicated servers #jira UE-30693 #test Cooked dedicated server and client Change 2975855 on 2016/05/12 by Lukasz.Furman fixed behavior tree serialization spawning duplicates of task services #tests BT editor Change 2975706 on 2016/05/12 by Daniel.Lamb Fixed redirect collector stats. #test Compile Change 2975636 on 2016/05/12 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge DUI @ CL 2975557 #RB:none #Tests:none [CodeReviewed]: matt.schembari, kerrington.smith, tony.oliva, jaymee.stanford, mona.huang, alex.conner, jacob.lawyer, paul.shank #ROBOMERGE-SOURCE: CL 2975635 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2975592 on 2016/05/12 by Zak.Middleton #ue4 - Add stat for SetHitResultFromShapeAndFaceIndex(). #tests PIE Change 2975589 on 2016/05/12 by Zak.Middleton #ue4 - Avoid filling temp variable unless in Editor builds. It's only used later in the function in Editor builds. #tests PIE Change 2975588 on 2016/05/12 by Zak.Middleton #ue4 - Minor tweak to avoid array read each loop iteration. #tests PIE Change 2975587 on 2016/05/12 by Zak.Middleton #ue4 - Add "IsPlayerController()" function to AController. Variable already existed, just wasn't exposed. #tests PIE Change 2975504 on 2016/05/12 by Daniel.Lamb Remove new stats system because it broke build. #test cook paragon Change 2975500 on 2016/05/12 by Daniel.Lamb Enable redirect timers so I can get stats from build machines. #test cook paragon. Change 2975367 on 2016/05/12 by Jason.Bestimt #ROBOMERGE-AUTHOR: david.nikdel #OGF #CatalogService #OSS #Localization - Flush the cached offers/items in CatalogServiceMcp when the culture changes since they contain localized text - Flush the cached virtual catalog offers/items in McpCatalogHelper when the culture changes since they contain localized text - Replaced SetForceCatalogRefresh with ClearCache per CR with SamZ (will require Launcher fixup) [CodeReviewed]: Sam.Zamani, Matt.Kuhlenschmidt #RB: Sam.Zamani #TESTS: storefront w/ language change #ROBOMERGE-SOURCE: CL 2975366 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2975209 on 2016/05/12 by Simon.Tovey Fixed initialization order warning. #tests none Change 2975200 on 2016/05/12 by Simon.Tovey Translucency GPU time stats for automation. Refactored separate translucency gpu timer to more general helper class and used it to also time regular translucency. Feeding both of these into a stat to help art identify poorly performing VFX for more detailed investigation. There are occasional spikes when the GPU is starved but overall the data out seems good. #tests GoldenPath, Editor, Auto downsampling works, new stat produces reasonable data. Change 2974984 on 2016/05/11 by Mieszko.Zielinski Fixed a bug in graph-a-star heuristics' calculation #UE4 #test golden path Change 2974916 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 26 @ CL 2974578 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2974915 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974869 on 2016/05/11 by Ben.Marsh BuildGraph: Add a MergeTelemetryWithPrefix="..." parameter to the <Command> task which allows merging the telemetry data from a child UAT run, adding a given prefix to all the key names. #tests none Change 2974673 on 2016/05/11 by Mieszko.Zielinski Fix to BT not stopping if "StopTree" called while BT was waiting for a task to latently abort #UE4 (change by ?ukasz.Furman) #test golden path Change 2974581 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: matt.kuhlenschmidt Merged CL 2974565 from Release-.26 -> Main: Fixed loc region not saving in shipping builds Partially fixed store not refreshing when changing regions. Real money currency items are pending additional fixes #ROBOMERGE-SOURCE: CL 2974578 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974444 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: richard.fawcett Reimplement support for specifying BuildPatchTool version used in chunking This is now possible after Ben Marsh's fix to BuildGraph with CL 2974407. #tests none #ROBOMERGE-SOURCE: CL 2974441 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974408 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: ben.marsh BuildGraph: Fix support for variable expansion in user-defined enum types. Enums in the schema are now represented as the union of valid values and a regex matching a balanced property expansion string, which still validates/autocompletes cleanly in Visual Studio. #tests none [CodeReviewed] Richard.Fawcett #ROBOMERGE-SOURCE: CL 2974407 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974392 on 2016/05/11 by Daniel.Lamb Optimizing resolve string asset reference resolution. Added timing stats (disabled by default). #test Cook paragon. Change 2974349 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: richard.fawcett Back out changelist 2974298. An issue with the BuildGraph system has prevented this change from working on the build farm. #tests none #ROBOMERGE-SOURCE: CL 2974347 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974299 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: richard.fawcett Add support for chunking builds with the pre-release version of BuildPatchTool. #tests None. This code will be tested by creating a build on the build farm immediately after submission. #ROBOMERGE-SOURCE: CL 2974298 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974277 on 2016/05/11 by Lina.Halper Fix up of retargeting when it skips replacing nested reference #tests: retargeting anim BP Change 2974210 on 2016/05/11 by Bart.Bressler Merging Oodle changes from Dev-Networking Change 2939167 on 2016/04/10 by John.Barrett Updated packet bit termination code, so that both UNetConnection's and the PacketHandler use a termination bit (required for both PacketHandler/UNetconnection, as HandlerComponent's such as Oodle, are byte-aligned and do not preserve packet bit size). Added new 'stat packet' stats group, for tracking reserved packet bits. Added '-NoPacketHandler' commandline parameter, for disabling the PacketHandler and all HandlerComponent's (including stateless handshake) - restoring netcode to pre-PacketHandler state. Removed PacketHandler 'packet overhead' method of packet bit size calculation - replaced with termination bit. Still partially used for reserving bits within packets (but renamed to avoid conflict with other 'PacketOverhead' variable). Refactored/consolidated some PacketHandler code. Added more stringent bounds checking on packet sizes. Change 2939168 on 2016/04/10 by John.Barrett Updated Oodle to support new packet bit-termination code. Added Oodle protocol support for selective packet compression (packets can now be sent uncompressed - game code will require a hook for this) - required for new bit-based netcode (Oodle outputs byte-aligned data, allowing compressed data to exceed size of uncompressed data - and thus, maximum packet size if not sent uncompressed - in rare edge cases). Added '-CompressionTest' commandline parameter to Oodle dictionary generation commandlet, which reserves a portion of captured packets, for determining the compression savings percentage. Added '-OodleDebugDump' commandline parameter, which disables normal dictionary generation, and converts packet captures into a .bin file, which is compatible with the Oodle 'example_packet.cpp' code. Added temporary security bandaids to Oodle code, based on report that Luigi Auriemma put together, which deals with potential weaknesses in the Oodle API Added 'stat oodle' stats for tracking failed attempts at compressing packets. Change 2942964 on 2016/04/10 by Ryan.Gerleve Fix broken indentation/formatting Change 2958260 on 2016/04/27 by Bart.bRessler Add branch name and changelist to oodle packet capture filenames. Change 2964360 on 2016/05/03 by John.Barrett Updated Oodle to support using a dictionary and capturing packets at the same time. The dictionary is now always loaded, if specified, and whenever -OodleCapturing is on the commandline, packets are captured alongside the active dictionary. Added several debug commands, to aid with testing compression performance (not QA-ready; only works with 1 player on a server): "Oodle Compression On/Off" - enables/disables packet compression (but still decompresses received compressed packets) "Oodle Dictionary Unload/Load" - unloads/loads the dictionary files, to allow releasing the files for dictionary generation, and reloading the new dictionary. "Oodle Capture On/Off" - Enables/Disables packet capturing at runtime - requires '-OodleCapturing' on commandline. "Oodle ResetStats" - resets the 'stat oodle' stat counters. The NetcodeUnitTest plugin should be enabled, so that these commands can automatically execute on the server as well, as needed. Change 2964553 on 2016/05/03 by Bart.Bressler Add process ID to oodle capture filenames Change 2966247 on 2016/05/04 by John.Pollard Oodle 2.1.5 SDK Change 2968761 on 2016/05/06 by Bart.Bressler - Added changelist number as parameter to most command line tasks to filter captures by their changelist number (use "all" to get everything) - Moved a bunch of the file searching/processing code outside of the tasks themselves so that the tasks all just operate to an array of capture files, this makes it easier to create new command line options - When looking for capture files, we will now recursively search subdirectories Change 2970529 on 2016/05/09 by Bart.Bressler Add an optional "CapturePercentage" command line parameter that has a percentage chance of generating capture files per connection Change 2970874 on 2016/05/09 by Bart.Bressler - Turn on OODLE_DEV_SHIPPING in the Orion server shipping config so that captures can be generated in shipping builds - Link to version 215 of oodle Change 2971233 on 2016/05/09 by Bart.Bressler Update Oodle DLLs in Orion Change 2971362 on 2016/05/09 by Bart.Bressler Create script for building an oodle dictionary out of capture files in an arbitrary location Change 2972176 on 2016/05/10 by Bart.Bressler Update oodle references to version 215 in OodleHandlerComponent.Build.cs #tests used solo vs. ai to test oodle captures and using them Change 2974035 on 2016/05/11 by Simon.Tovey Adding fx.ParticleCollisionIgnoreInvisibleTime to replace hard coded time. This is the time a PSC needs to be invisible for to have all it's collisions ignored. This is potentially the cause of a bug Tim et al are seeing. #tests Editor, Can be used to repro/fix the issue. Change 2973985 on 2016/05/11 by Lina.Halper Retargeting fix with editor saving issue #tests: retargeting Change 2973695 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 26 @ CL 2973469 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2973694 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2973679 on 2016/05/11 by Graeme.Thornton UAT parameter -signedpak now no longer implies -pak #tests win64 cooked client. checked that pak generation works as expected through project launcher Change 2973588 on 2016/05/11 by Simon.Tovey OR-21033 - Get physical material from particle collision event exposed in Cascade / Blueprint Particles can now receive collision events selectively based upon the phyisics material of the hit. Physics material is passed through the event and can be accessed in BPs. The Event Receiver Spawn node also now has an array of Allowed and Banned phys materials. #tests Editor and game. Coudln't test cooked as having unrelated crashes in cooked games. Shouldn't be any cooked/uncooked issues here. Change 2973394 on 2016/05/11 by bruce.nesbit Fixed couple of shadow vars #tests compiled Change 2973335 on 2016/05/11 by Andrew.Grant Warning fix #tests compiled Change 2973308 on 2016/05/10 by Dmitry.Rekman Add "unplayable condition" reporting. - The server will report an unplayable condition by creating a local file (under Saved). - An external script can possibly notice this and, applying its own logic on % of servers reporting it, profile or shutdown the whole machine. - Report file is to be deleted by an external script. #tests Compiled and ran Linux server, subjected it to various hitches. Change 2973235 on 2016/05/10 by Zak.Middleton #ue4 - Removed allocs after initial spawn from client saved move processing in character movement. #tests PIE multiplayer w/ Bots Change 2973157 on 2016/05/10 by Olaf.Piesche Merging CL 2973112 from //UE4/Dev-Rendering->//Orion/Dev-General Providing particle source and target for beam emitters #tests editor game PC Change 2972715 on 2016/05/10 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 26 @ CL 2972681 #RB: none #Tests:none #ROBOMERGE-SOURCE: CL 2972712 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2972678 on 2016/05/10 by Mieszko.Zielinski Fixed babysitter bot not avoiding enemy towers when pathfinding back to base #Orion #jira OR-18590 #test golden path Change 2972595 on 2016/05/10 by Lina.Halper Animation Retargeting fix for blendspaces #code review: Benn.Gallagher, Martin.Wilson #tests: retargeting anim BP Change 2972282 on 2016/05/10 by Daniel.Lamb Optimized string asset reference resolution slightly to help get back missing 10 minutes from paragon cook. #test cook paragon. Change 2972260 on 2016/05/10 by Laurent.Delayen Fixed crash in UCharacterMovementComponent::HasRootMotionSources(). #tests Chains pull not crashing anymore. Change 2972241 on 2016/05/10 by Frank.Fella UMG - Fixes for material animation copied from 4.12. #RB Matt K. #TESTS Struct materials can now be animated and animated materials are named nicely. Change 2971643 on 2016/05/09 by Dmitry.Rekman Add reporting of "zero load" frame times (OR-21035). - Added a thread that does nothing but sleeps and counts how often it missed the target FPS. - Added an analytics event ServerZeroLoadFrameTimeDistribution that is sent at the end of the match. - Server only. #tests Compiled and ran Linux server on a compatible content, played few matches in a row. Change 2971544 on 2016/05/09 by Ben.Marsh EC: Use a full path to the telemetry file, to account for UAT switching directories. Change 2971532 on 2016/05/09 by Wes.Hunt Alter the cook stats hierarchical profile data to reflect the latest cook changes. #tests none Change 2971527 on 2016/05/09 by Ben.Marsh UAT: Move telemetry object into CommandUtils, so we can add stats from anywhere. #tests none Change 2971461 on 2016/05/09 by David.Ratti Fix issues with mesh swap skins: -Front end intro animations not playing -In game spawn animations not playing -Some attachment weirdness (twinblast) #tests golden path Change 2971460 on 2016/05/09 by David.Ratti Fallback to Target actor if there is no instigating actor in the GAmeplayCue parameters when determining if we should play "local only" effects #tests pie Change 2971364 on 2016/05/09 by Ben.Marsh EC: Add support for adding custom telemetry data from UAT scripts, which gets piped through to the trends panel in EC. #tests none Change 2971245 on 2016/05/09 by Dmitry.Rekman Add a "hitchhunter" log message to catch hitches while sleeping. #tests Compiled and ran Linux server on a compatible content. Change 2971196 on 2016/05/09 by jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2971139 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2971168 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) #ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human. //Orion/Dev-General/OrionGame/Content/Characters/Heroes/Coil/Audio/Body/Pixie_Cranking_Loop_Cue.uasset - can't branch exclusive file already opened #CodeReview: david.nikdel, jason.bestimt Change 2971113 on 2016/05/09 by Dmitry.Rekman UdpMessaging: Fixed broken filters for when to enable UDP transport. - Redoing MaxP's change from Dev-Sequencer (CL 2963357). - Reduces number of threads spawned by the server. #tests Compiled Linux server, ran it on a compatible content. Change 2971040 on 2016/05/09 by jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2970990 #RB:none #Tests:none [CodeReviewed]: jon.lietz #ROBOMERGE-SOURCE: CL 2971027 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) #ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human. #CodeReview: david.nikdel, jason.bestimt Change 2970555 on 2016/05/09 by Ben.Marsh BuildGraph: Only show warnings and errors for the SavePackage log during cooks. Prevents redundant display of information that's already in the Cook log. #tests preflight here: https://ec-01.epicgames.net/commander/link/jobDetails/jobs/6443796 Change 2970507 on 2016/05/09 by David.Ratti Support for linking passive abilities to a key binded ability. E.g., allow a passive ability to be unlocked and leveled up in step with a key binded ability. Cleaned up the TryLevel/CanLevelUp code a bit: moved to Orion Ability System Component #tests pie Change 2970414 on 2016/05/09 by Graeme.Thornton Don't take a copy of the child tags array when doing UGameplayTagsManager::FindTagNode, just take a const& #tests win64 client golden path Change 2969729 on 2016/05/06 by Mieszko.Zielinski Fixed a dumb mistake in a conditional expresion in UNavigationQueryFilter::GetQueryFilter #UE4 #test golden path Change 2969675 on 2016/05/06 by Mieszko.Zielinski Implemented "meta navigation filter" that can fetch a filter class based on given agent #UE4 Added NavFilter_AIControllerDefault that fetched DefaultNavigationFilter from AIController Reverted hack-feature that supplied same functionality to EQS #test golden path Change 2969652 on 2016/05/06 by Michael.Noland HLOD: Changed UI gating code so that whether or not a LOD Actor is valid is based on the presence of at least two static mesh components, rather than at least two actors (to improve handling when including BPs) - Repurposed HasValidSubActors for this check, and introduced HasAnySubActors() for the existing uses as this better matches the intent of how the function was used #tests Added a single BP containing 7 mesh components to a new ALODActor and verified that it allowed a proxy to be generated Change 2969651 on 2016/05/06 by Michael.Noland Simplygon: Added time taken for simplygon mesh reduction to the log message #tests Simplified a LOD cluster and inspected the log Change 2969604 on 2016/05/06 by Uriel.Doyon Changed default value to true for UParticleModuleVectorFieldLocal::bUseFixDT. #tests confirmed that default value has changed for old assets, while allowing override. Change 2969418 on 2016/05/06 by jason.bestimt #ROBOMERGE-AUTHOR: andrew.grant Fixed unconverted char string being passed as part of build info #tests ran & verified patch check passes #ROBOMERGE-SOURCE: CL 2969417 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2968817 on 2016/05/06 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2968572 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2968813 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2968383 on 2016/05/05 by Mieszko.Zielinski Added "default navigation filter" to AIController #UE4 Also, made EQS take advantage of that #test golden path Change 2968225 on 2016/05/05 by John.Pollard Add sanity checks and more info to help track down possible memory corruption #tests Networking, replication Change 2967903 on 2016/05/05 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2967827 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2967902 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2967899 on 2016/05/05 by Lina.Halper Merged change of 2956152 Remove invalid ensure - this didn't work if you have composite inside. #tests: none Change 2967870 on 2016/05/05 by Andrew.Grant Fix for OR-20731 (gamever crashes client) #tests gamever at console with -game Change 2967606 on 2016/05/05 by Wes.Hunt Tweaked output log message for HTTP module shutdown. #tests none Change 2967359 on 2016/05/05 by Wes.Hunt HttpManager will log outstanding requests on shutdown so people can debug shutdown issues and ensure their requests get flushed properly. Also changed default LogHttp logging level to display so these messages can be shown by default without using warning level. #tests ran editor build and queued up an event using the console command, then quit immediately. the log indeed showed that HttpManager had to wait at least 0.5 seconds for the request to complete. Change 2966987 on 2016/05/05 by Dmitry.Rekman Fix editor build. #tests Compiled Win64 editor. Change 2966977 on 2016/05/05 by Dmitry.Rekman Added collecting and reporting periodic server frame time distribution. - Added generic FHistogram class and necessary analytic events. - Also added reporting hostname (OR-20842). #tests Built Linux server and ran a few matches on a compatible content. Change 2966920 on 2016/05/04 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2966805 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2966919 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2966778 on 2016/05/04 by Michael.Noland Rendering: Fixed shadow variable warning in GPUProfiler #tests Compiled and tested GPUProfiler command Change 2966769 on 2016/05/04 by Mieszko.Zielinski Fixed GraphAStar not resetting the output path before fillinf it with results #UE4 #test golden path Change 2966704 on 2016/05/04 by Michael.Noland Rendering: Added triangle and draw call summaries to ProfileGPU output, broken up by asset and material - This is controlled by r.ProfileGPU.PrintAssetSummary, which defaults to 1, but you really need r.ShowMaterialDrawEvents 1 enabled as well for a complete picture - It can also output a summary line for speciifc asset names using a comma separated list in r.ProfileGPU.AssetSummaryCallOuts (e.g., "LOD,HeroName") #tests Used ProfileGPU a number of times Change 2966696 on 2016/05/04 by Michael.Noland Engine: Embedded FPS chart preamble/postamble/row .html files into ChartCreation.cpp to permanently solve packaging woes #tests Tested FPS charts in an uncooked and cooked build #jira OR-19713 Change 2966336 on 2016/05/04 by Lukasz.Furman fixed jungle minions unable to reach spawn locations when camp resets #jira OR-20700 #tests jungle camp POC Change 2965948 on 2016/05/04 by David.Ratti Changes to how passive abilities activate -Passives now continually try to activate by default rather than only on spawn Support for Status.Immortal -Prevents death, fies AbilityTriggerEvent.ImmortalProc when this happens. -Clamps health to 1. Fixed bug in muriel passive where ShieldHealthRegen would be left in the world where muriel died. Fixed bunch of crap in GA_OnSpawn that was causing desync on client at start of match #tests multi pie Change 2965870 on 2016/05/04 by Ryan.Gerleve Duplicated fix from Release-4.12 by marc.audy, CL 2960819: Owned components are once again referenced by their Owning actor for GC purposes #jira UE-29131 #tests golden path Change 2965798 on 2016/05/04 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2965789 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2965796 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2965220 on 2016/05/03 by Dmitry.Rekman Log instance id and system id (OR-20782). - These ids get reported in multiple analytics events, having them logged is helpful for quickly mapping events to the log file. #tests Compiled Linux server, ran on compatible client. Change 2964907 on 2016/05/03 by Jason.Bestimt #ORION_DG - Merge MAIN @ CL 2964858 #RB:none #Tests:none Change 2964530 on 2016/05/03 by Laurent.Delayen Renamed GetSlotRootMotionWeight to GetSlotNodeGlobalWeight and made it double buffered to it's safe to access anytime. Added GetSlotMontageGlobalWeight() to get the Global Weight of a montage being played on a Slot. (Also double buffered). Added GetInstanceMachineWeight() to get Global Weight of a State Machine in the AnimGraph. (Also double buffered) Added FAnimInstanceProxy::GetStateMachineIndexAndDescription to avoid searching through the AnimNodeProperties twice. #tests Chains full feature system in PIE. Change 2964498 on 2016/05/03 by Frank.Fella DecalComponent - Fix visibility so that it behaves like other scene components with regard to the editor visibility, component visibility, and actor hidden in game flags. #RB Andrew Rodham #TESTS Visibility for decals works like other scene components in the editor, and their visibility can now be animated properly by sequencer. Change 2964428 on 2016/05/03 by Benn.Gallagher Fixed stale clothing chunk/section references after container realloc in editor #tests editor Change 2964316 on 2016/05/03 by bruce.nesbit Banner revisions Banners now use components for various banner items Banners can now be enabled when killing a hero. #tests PIE+Game Change 2964187 on 2016/05/03 by Jon.Lietz Speeding up the tag count check in UAbilitySystemComponent::RegisterAndCallGameplayTagEvent() - Remove the call to GetAggregatedStackCount and creating a FGameplayEffectQuery every time we call RegisterAndCallGameplayTagEvent - Added GetTagCount to the UAbilitySystemComponent that will call GetTagCount on the GameplayTagCountContainer #RB DanY #tests JIP shadow pad still works. Change 2964136 on 2016/05/03 by Laurent.Delayen Fix crash while switching tabs using Persona. #tests not crashing anymore. Change 2964083 on 2016/05/03 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2963929 [CodeReviewed]: andrew.grant HTTP Manager has larger stack size (1024) #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2964080 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2963771 on 2016/05/02 by Nick.Atamas Setting a desired size scale invalidates layout and volatility. #test none Change 2963555 on 2016/05/02 by Rob.Cannaday Fix PS4 Orion players being able to whisper chat with non-Orion players #jira OR-20626 #tests chat with launcher, fortnite Change 2963387 on 2016/05/02 by Laurent.Delayen Added GatherDebugData to FABRIK node. #tests showdebug animation works on Chains now. Change 2963331 on 2016/05/02 by Jon.Lietz fixing compile error, dont need the clamp just the ternary on the EventType and pass down the tag count or 1. #RB none #tests compiles Change 2963106 on 2016/05/02 by Rob.Cannaday Increase HTTP thread's stack size to 128k We discovered a stack overflow when the stack size was 64kb in LavasoftTcpService64.dll (Ad-Aware's Lavasoft Web Companion) #tests log in Change 2963047 on 2016/05/02 by Jon.Lietz OR-20206 for JIP we need to call the bound function if we already have the tag on reconnect. - adding a new function in UAbilitySystemComponent, RegisterAndCallGameplayTagEvent this will bind the passed in delegate and if the ability system has that tag already will execute the delegate. #RB Dave.Ratti #test shadow pad, slow, stun and root still trigger and trigger for JIP players. Change 2962836 on 2016/05/02 by jason.bestimt #ROBOMERGE-AUTHOR: andrew.grant [NULL MERGE] Duplicating 2961899 - Fix minimal code builds for Linux not overwriting files [CodeReviewed] Ben.Marsh #ROBOMERGE-SOURCE: CL 2962812 in //Orion/Release-0.24.2/... via CL 2962830 via CL 2962833 via CL 2962834 via CL 2962835 #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2962570 on 2016/05/02 by Jason.Bestimt #ORION_MAIN - Merge MAIN @ CL 2962544 #RB:none #Tests:none Change 2962552 on 2016/05/02 by Ben.Marsh Avoid output of warnings containing the string "error:" (and causing the EC post processor to fail the build) if posting build info has a human-readable error message instead. Output should probably be changed to parse out/sanitize the actual failure message if it's meant to retry and succeed, but this will stop failures caused by multiple builds being posted with the same build version. #tests none Change 2962506 on 2016/05/02 by Ben.Marsh Add a version string to identify a given build (FApp::GetBuildVersion()/BUILD_VERSION) which is distinct from the engine version. Defaults to <Escaped Branch Name>-CL-<Changelist>, but can be overriden by specifying a -Build=... argument to UpdateLocalVersion or the "Build" attribute to the SetVersion BuildGraph task. #tests Preflighted Win64 client/server build (P:\Builds\Orion\++Orion+Dev-General-CL-2962228-PF-2945494-6398155-PF-2945494-6398155) and loaded into Agora. Checked that version strings appear correctly in generated executables. Change 2962228 on 2016/04/30 by Dmitry.Rekman Move processing HTTP requests into separate thread (OR-20723). - First iteration of the implementation, pending implementing feedback. - Adds a separate thread for CurlHttp where actual processing is performed. - Coded by RobC, post-processed by me. #tests Compiled Linux server and Windows client, ran them on compatible content, played a match. Change 2961899 on 2016/04/29 by Ben.Marsh BuildGraph: Fix minimal Linux server builds not overwriting the existing executables, by adding an "Overwrite" parameter into the staging task. Windows exe-only patches already happen to bypass this bug by deleting the Binaries/Win64 directory (designed to remove any configurations that weren't built this time), but could still fail if changes had been made to some other staged binaries. #tests preflighted code-only build against DG CL 2960870 and compared output (P:\Builds\Orion\++Orion+Dev-General-CL-2961878-PF-2961895-6393603) Change 2961587 on 2016/04/29 by Daniel.Lamb Redirector doesn't fire callback if it fails to be loaded. #test Cook orion. Change 2961458 on 2016/04/29 by Wes.Hunt Cooker Stats improvements. Also removed some old UBT telemetry that was not being used. #tests many cooks of orion Change 2961136 on 2016/04/29 by Daniel.Lamb Readded caching of platform data into postload of materials. #test Cook paragon. [CL 2979220 by Ben Marsh in Main branch]
2016-05-16 16:20:52 -04:00
#if ENABLE_COOK_STATS
namespace NavCollisionCookStats
{
static FCookStats::FDDCResourceUsageStats UsageStats;
static FCookStatsManager::FAutoRegisterCallback RegisterCookStats([](FCookStatsManager::AddStatFuncRef AddStat)
{
UsageStats.LogStats(AddStat, TEXT("NavCollision.Usage"), TEXT(""));
});
}
#endif
static const FName NAVCOLLISION_FORMAT = TEXT("NavCollision_Chaos");
class FNavCollisionDataReader
{
public:
FNavCollisionConvex& TriMeshCollision;
FNavCollisionConvex& ConvexCollision;
TNavStatArray<int32>& ConvexShapeIndices;
FBox& Bounds;
FNavCollisionDataReader(FByteBulkData& InBulkData, FNavCollisionConvex& InTriMeshCollision, FNavCollisionConvex& InConvexCollision, TNavStatArray<int32>& InShapeIndices, FBox& InBounds)
: TriMeshCollision(InTriMeshCollision)
, ConvexCollision(InConvexCollision)
, ConvexShapeIndices(InShapeIndices)
, Bounds(InBounds)
{
// Read cooked data
uint8* DataPtr = (uint8*)InBulkData.Lock( LOCK_READ_ONLY );
FBufferReader Ar( DataPtr, InBulkData.GetBulkDataSize(), false, true );
uint8 bLittleEndian = true;
Ar << bLittleEndian;
Ar.SetByteSwapping( PLATFORM_LITTLE_ENDIAN ? !bLittleEndian : !!bLittleEndian );
Ar << TriMeshCollision.VertexBuffer;
Ar << TriMeshCollision.IndexBuffer;
Ar << ConvexCollision.VertexBuffer;
Ar << ConvexCollision.IndexBuffer;
Ar << ConvexShapeIndices;
Ar << Bounds;
InBulkData.Unlock();
}
};
//----------------------------------------------------------------------//
// FDerivedDataNavCollisionCooker
//----------------------------------------------------------------------//
class FDerivedDataNavCollisionCooker : public FDerivedDataPluginInterface
{
private:
UNavCollision* NavCollisionInstance;
UObject* CollisionDataProvider;
FName Format;
FGuid DataGuid;
FString MeshId;
public:
FDerivedDataNavCollisionCooker(FName InFormat, UNavCollision* InInstance);
virtual const TCHAR* GetPluginName() const override
{
return TEXT("NavCollision");
}
virtual const TCHAR* GetVersionString() const override
{
return TEXT("8F4645C7A18B40C487C7E50E19CD6B6C");
}
virtual FString GetPluginSpecificCacheKeySuffix() const override
{
const uint16 Version = 15;
return FString::Printf( TEXT("%s_%s_%s_%hu")
, *Format.ToString()
, *DataGuid.ToString()
, *MeshId
, Version
);
}
virtual bool IsBuildThreadsafe() const override
{
return false;
}
virtual bool Build( TArray<uint8>& OutData ) override;
virtual FString GetDebugContextString() const override;
/** Return true if we can build **/
bool CanBuild()
{
return true;
}
};
FDerivedDataNavCollisionCooker::FDerivedDataNavCollisionCooker(FName InFormat, UNavCollision* InInstance)
: NavCollisionInstance(InInstance)
, CollisionDataProvider( NULL )
, Format( InFormat )
{
check(NavCollisionInstance != NULL);
CollisionDataProvider = NavCollisionInstance->GetOuter();
DataGuid = NavCollisionInstance->GetGuid();
IInterface_CollisionDataProvider* CDP = Cast<IInterface_CollisionDataProvider>(CollisionDataProvider);
if (CDP)
{
CDP->GetMeshId(MeshId);
}
}
bool FDerivedDataNavCollisionCooker::Build( TArray<uint8>& OutData )
{
TRACE_CPUPROFILER_EVENT_SCOPE(FDerivedDataNavCollisionCooker::Build);
if ((NavCollisionInstance->ConvexShapeIndices.Num() == 0) ||
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3967517) #rb none #lockdown Nick.Penwarden #rnx ============================ MAJOR FEATURES & CHANGES ============================ Change 3804281 by Fred.Kimberley Improve contrast on watches in blueprints. Change 3804322 by Fred.Kimberley First pass at adding a watch window for blueprint debugging. Change 3804737 by mason.seay Added some Descriptions to tests that didn't have any, and fixed some typos Change 3806103 by mason.seay Moved and Renamed Timers test map and content appropriately Change 3806164 by Fred.Kimberley Add missing property types to GetDebugInfoInternal. #jira UE-53355 Change 3806617 by Dan.Oconnor Function Terminator (and derived types) now use FMemberReference instead of a UClass/FName pair. This fixes various bugs when resolving the UFunction referenced by the function terminator #jira UE-31754, UE-42431, UE-53315, UE-53172 Change 3808541 by Fred.Kimberley Add support for redirecting user defined enums. This is in response to the following UDN thread: https://udn.unrealengine.com/questions/404141/is-is-possible-to-create-a-redirector-from-a-bluep.html Change 3808565 by mason.seay Added a few more struct tests Change 3809840 by mason.seay Renamed CharacterMovement.umap to CharacterCollision. Fixed up content to reflect this change. Change 3809847 by mason.seay Added Object Timer tests. Fixed up existing timer test to remove delay dependency Change 3811704 by Ben.Zeigler Fix issue where identical enum redirects registered to different initial names would throw an incorrect error, it's fine if the value change maps are identical Change 3811946 by Ben.Zeigler #jira UE-53511 Fix it so it is possible to set a user defined struct value back to it's default. The UDS hack in PropertyValueToString is no longer needed, but this could affect some other user struct editor operations Change 3812061 by Dan.Oconnor Stepping over or in to nodes that are expanded at compile time (e.g. event nodes, spawn actor nodes) no longer requires multiple 'steps' #jira UE-52854 Change 3812259 by Dan.Oconnor Fix asset broken by removal of an unkown enum #jira UE-51419 Change 3812904 by Ben.Zeigler Make ResolveRedirects on StreamableManager public as it can be used to validate things Change 3812958 by Ben.Zeigler #jira UE-52977 Fix crashes when binding blueprint editor commands to keys and using from invalid contexts Change 3812975 by Mieszko.Zielinski Added contraptions to catch a rare eidtor-time EQS crash #UE4 #jira UE-53468 Change 3818530 by Phillip.Kavan Fix incorrect access to nested instanced subobjects in nativized Blueprint ctor codegen. Change summary: - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to properly reference the outer and check ptr validity when creating/obtaining nested default subobjects. - Modified FEmitDefaultValueHelper::HandleClassSubobject() to better guard against code generation based on an invalid local variable name. #jira UE-52167 Change 3819733 by Mieszko.Zielinski Marked UAISenseConfig_Blueprint and UAISense_Blueprint as hidedropdown #UE4 #jira UE-15089 Change 3821776 by Marc.Audy Remove redundent code in SpawnActorFromClass that already exists in ConstructObjectFromClass parent class Change 3823851 by mason.seay Moved and renamed blueprints used for Object Reference testing Change 3824165 by Phillip.Kavan Ensure that subobject class types are constructed prior to accessing a subobject CDO in a nativized Blueprint class's generated ctor at runtime. Change summary: - Modified FFakeImportTableHelper to tag subobject class types as a preload dependency of the outer converted Blueprint class type and not of the CDO. #jira UE-53111 Change 3830309 by mason.seay Created Literal Gameplay Tag Container test Change 3830562 by Phillip.Kavan Blueprint nativization bug fixes (reviewed/taken from PR). Change summary: - Modified FSafeContextScopedEmitter::ValidationChain() to ensure that generated code calls the global IsValid() utility function on objects. - Modified FBlueprintCompilerCppBackend::EmitCreateArrayStatement() to generate a proper cast on MakeArray node inputs for enum class types. - Modified FBlueprintCompilerCppBackend::EnimCallStatementInner() to more correctly identify an interface function call site. - Modified FEmitHelper::GenerateAutomaticCast() to properly handle automatic casts of enum arrays. - (Modified from PR source) Added new FComponentDataUtils statics to consolidate custom init code generation for converted special-case component types (e.g. BodyInstance). Ties native component DSOs to the same pre/post as converted non-native component templates around the OuterGenerate() loop. - Modified FExposeOnSpawnValidator::IsSupported() to include CPT_SoftObjectReference property types. - Modified UBlueprintGeneratedClass::CheckAndApplyComponentTemplateOverrides() to no longer break out of the loop before finding additional ICH override record matches. #4202 #jira UE-52188 Change 3830579 by Fred.Kimberley Add support for turning off multiple watches at once in the watch window. #jira UE-53852 Change 3836047 by Zak.Middleton #ue4 - Dev test maps for overlaps perf tests. Change 3836768 by Phillip.Kavan Fix for a build failure that could occur with Blueprint nativization enabled and EDL disabled. This was a regression introduced in 4.18. Change summary: - Modified FEmitDefaultValueHelper::AddStaticFunctionsForDependencies() to emit the correct signature for constructing FBlueprintDependencyData elements when the EDL boot time optimization is disabled. #jira UE-53908 Change 3838085 by mason.seay Functional tests around basic blueprint functions Change 3840489 by Ben.Zeigler #jira UE-31662 Fix regression with renaming parent inherited function. It was not correctly searching the parent's skeleton class during the child's recompile so it was erroneously detecting the parent function as missing Change 3840648 by mason.seay Updated Descriptions on tests Change 3842914 by Ben.Zeigler Improve comments around stremable handle cancel/release Change 3850413 by Ben.Zeigler Fix asset registry memory reporting, track some newer fields and correctly report the state size instead of static size twice Copy of CL #3849610 Change 3850426 by Ben.Zeigler Reduce asset registry memory in cooked build by stripping out searchable names and empty dependency nodes by default Add option to strip dependency data for asset data with no tags, this was always true before but isn't necessarily safe Copy of CL #3850389 Change 3853449 by Phillip.Kavan Fix a scoping issue for local instanced subobject references in nativized Blueprint C++ code. Also, don't emit redundant assignment statements for instanced subobject reference properties. Change summary: - Consolidated FComponentDataUtils into FDefaultSubobjectData and extended FNonativeComponentData from it in order to handle both native & non-native DSO initialization codegen through a more common interface. - Exposed FEmitDefaultValueHelper::HandleInstancedSubobject() as a public API and added a 'SubobjectData' parameter to allow initialization codegen to be deferred until after all default subobjects have been mapped to local variables within the current scope. - Modified FEmitDefaultValueHelper::GenerateConstructor() to first map all default subobjects to local variables and then emit any delta initialization code for property values. - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to return an empty string for an instanced reference to a default subobject. This allows us to avoid emitting initialization statements to unnecessarily reassign instances back to the same property. - Modified FEmitDefaultValueHelper::InnerGenerate() to better handle instanced references to default subobjects, ensuring that we don't emit unnecessary assignment statements and array initialization code to the converted class constructor in C++. - Fixed a few typos. #jira UE-53960 Change 3853465 by Phillip.Kavan Fix plugin module C++ source template to conform to recent public include path changes. Change 3857599 by Marc.Audy PR #4438: UE-54281: Make None a valid default value to select (Contributed by projectgheist) #jira UE-54281 #jira UE-54399 Change 3863259 by Zak.Middleton #ue4 - Save bandwidth for replicated characters by only replicating 4 byte timestamp value to clients if it's actually needed for Linear smoothing. Added option to always replicate the timestamp ("bNetworkAlwaysReplicateTransformUpdateTimestamp", default off), in case users still want this timestamp for some reason, or if smoothing mode changes dynamically and the server won't know. #jira UE-46293 Change 3863491 by Zak.Middleton #ue4 - Reduce network RPC overhead for players that are not moving. Added ClientNetSendMoveDeltaTimeStationary (default 12Hz) to supplement existing ClientNetSendMoveDeltaTime and ClientNetSendMoveDeltaTimeThrottled. UCharacterMovementComponent::GetClientNetSendDeltaTime() now uses this time if Acceleration and Velocity are zero, and the control rotation matches the last ack'd control rotation from the server. Also fixed up code default for ClientNetSendMoveDeltaTime to match default INI value. #jira UE-21264 Change 3865325 by Zak.Middleton #ue4 - Fix static analysis warning about possible null PC pointer. #jira none Change 3869828 by Ben.Zeigler #jira UE-54786 Fix it so -cookonthefly cooperates with -iterate by writing out a development asset registry Change 3869969 by mason.seay Character Movement Functional Tests Change 3870099 by Mason.Seay Submitted asset deletes Change 3870105 by mason.seay Removed link to anim blueprint to fix errors Change 3870238 by mason.seay Test map for Async Loading in a Loop Change 3870479 by Ben.Zeigler Add code to check CoreRedirects for SoftObjectPaths when saving or resolving in the editor. This is a bit slow so we don't want to do it on load We don't have any good way to know the type of a path so I check both Object and Class redirectors, which will also pickup Module renames Change 3875224 by mason.seay Functional tests for Event BeginPlay execution order Change 3875409 by mason.seay Optimized and fixed up character movement tests (because a potential bug in FunctionalTestActor is always passing a test when it can fail) Change 3878947 by Mieszko.Zielinski CIS fixes #UE4 Change 3879000 by Mieszko.Zielinski More CIS fixes #UE4 Change 3879139 by Mieszko.Zielinski Even moar CIS fixes #UE4 Change 3879742 by mason.seay Added animation to Nativization Widget asset Change 3880198 by Zak.Middleton #ue4 - CanCrouchInCurrentState() returns false when character capsule is simulating physics. #jira UE-54875 github #4479 Change 3880266 by Zak.Middleton #ue4 - Optimize UpdateCharacterStateBeforeMovement() to do cheaper tests earlier (avoid CanCrouchInCurrentState() unless necessary, now that it tests IsSimulatingPhysics() which is not trivial). #jira UE-54875 Change 3881546 by Mieszko.Zielinski *.Build.cs files clean up - removed redundant dependencies from NavigationSystem and AIModule #UE4 Change 3881547 by Mieszko.Zielinski Removed a bunch of DEPRECATED functions from the new NavigationSystem module #UE4 Removed all deprecates prior 4.15 (picked this one because I do know some licencees are still using it). Change 3881742 by mason.seay Additional crouch test to cover UE-54875 Change 3881794 by Mieszko.Zielinski Fixed a bug in FVisualLoggerHelpers::GetCategories resulting in losing verbosity information #UE4 Change 3884503 by Mieszko.Zielinski Fixed TopDown code template to make it compile after navsys refactor #UE4 #jira UE-55039 Change 3884507 by Mieszko.Zielinski Switched ensures in UNavigationSystemV1:SimpleMoveToX to error-level logs #UE4 It's an error rather than a warning because the functions no longer do anything. Making it work would require a cyclic dependency between NavigationSystem and AIModule. #jira UE-55033 Change 3884594 by Mieszko.Zielinski Added a const FNavigationSystem::GetCurrent version #UE4 lack of it was causing KiteDemo to not compile. Change 3884602 by Mieszko.Zielinski Mac editor compilation fix #UE4 Change 3884615 by Mieszko.Zielinski Fixed FAIDataProviderValue::GetRawValuePtr not being accessible from outside of AIModule #UE4 Change 3885254 by Mieszko.Zielinski Guessfix for UE-55030 #UE4 The name of NavigationSystem module was put in wrong in the IMPLEMENT_MODULE macro #jira 55030 Change 3885286 by Mieszko.Zielinski Changed how NavigationSystem module includes DerivedDataCache module #UE4 #jira UE-55035 Change 3885492 by mason.seay Minor tweaks to animation Change 3885773 by mason.seay Resaving assets to clear out warning Change 3886433 by Mieszko.Zielinski Fixed TP_TopDownBP's player controller BP to not use deprecated nav functions #UE4 #jira UE-55108 Change 3886783 by Mieszko.Zielinski Removed silly inclusion of NavigationSystemTypes.h from NavigationSystemTypes.h #UE4 Change 3887019 by Mieszko.Zielinski Fixed accessing unchecked pointer in ANavigationData::OnNavAreaAdded #UE4 Change 3891031 by Mieszko.Zielinski Fixed missing includes in NavigationSystem.cpp #UE4 Change 3891037 by Mieszko.Zielinski ContentEample's navigation fix #UE4 #jira UE-55109 Change 3891044 by Mieszko.Zielinski PR #4456: Fix bug in UAISense_Sight::OnListenerForgetsActor (Contributed by maxtunel) #UE4 Change 3891598 by mason.seay Resaving assets to clear out "empty engine version" spam Change 3891612 by mason.seay Fixed deprecated Set Text warnings Change 3893334 by Mieszko.Zielinski Fixed a bug in navmesh generation resulting in not removing layers that ended up empty after rebuilding #UE4 #jira UE-55041 Change 3893394 by Mieszko.Zielinski Fixed navmesh debug drawing to properly display octree elements with "per instance transforms" (like instanced SMs) #UE4 Also, added a more detailed debug drawing of navoctree contents (optional, but on by default). Change 3893395 by Mieszko.Zielinski Added a bit of code to navigation system's initialization that checks the enegine ini for sections refering to the moved navigation classes, and complain about it #UE4 The message is printed as an error-level log line and it says what should the offending section be renamed to. Change 3895563 by Dan.Oconnor Mirror 3895535 Append history from previous branches in source control history view #jira none Change 3896930 by Mieszko.Zielinski Added an option to tick navigation system while the game is paused #UE4 Controlled via NavigationSystemV1.bTickWhilePaused, ini- and ProjectSettings-configurable. #jira UE-39275 Change 3897554 by Mieszko.Zielinski Unified how NavMeshRenderingComponent draws navmesh and octree collision's polys #UE4 Change 3897556 by Mieszko.Zielinski Fixed what kind of nav tile bounds we're sending to nav-colliding elements when calling 'per-instance transform' delegate #UE4 #jira UE-45261 Change 3898064 by Mieszko.Zielinski Made SM Editor display AI-navigation-related whenever bHasNavigationData is set to true #UE4 #jira UE-50436 Change 3899004 by Mieszko.Zielinski Fixed UEnvQueryItemType_Actor::GetItemLocation and UEnvQueryItemType_Actor::GetItemRotation to return FAISystem::InvalidLocation and FAISystem::InvalidRotation respectively instead of '0' when hosted Actor ptr is null #UE4 Note for programmers: this changes the default behavior of this edge case. You might want to go through your code and check if you're comparing UEnvQueryItemType_Actor::GetItem*'s results to 0. Change 3901733 by Mieszko.Zielinski Made FEnvQueryInstance::PrepareContext implementations returning vectors and rotators ignore InvalidLocation and InvalidRotation (respectively) #UE4 Change 3901925 by Ben.Zeigler #jira UE-55395 Fix issue where the cooker could load asset registry caches made in -game that do not have dependency data, leading to broken cooks Change 3902166 by Marc.Audy Make ULevel::GetWorld final Change 3902749 by Ben.Zeigler Fix it so pressing refresh button in asset audit window actually refreshes the asset management database Change 3902763 by Ben.Zeigler #jira UE-55407 Fix it so editor tutorials are not cooked unless referenced, by correctly marking soft object paths imported from editor project settings as editor-only Change 3905578 by Phillip.Kavan The UX to add a new parameter on a Blueprint delegate is now at parity with Blueprint functions. #4392 #jira UE-53779 Change 3905848 by Phillip.Kavan First pass of the experimental Blueprint graph bookmarks feature. #jira UE-10052 Change 3906025 by Phillip.Kavan CIS fix. Change 3906195 by Phillip.Kavan Add missing icon file. Change 3906356 by Phillip.Kavan Moved Blueprint bookmarks enable flag into EditorExperimentalSettings for consistency with other options. Change 3910628 by Ben.Zeigler Partial fix for UE-55363, this allows references to ObjectRedirectors to be switched from parent class to a child class on load as this should always be safe This does not actually fix UE-55363 because that case is changing from UMaterial to UMaterialInstanceConstant, and those are siblings instead of parent/child Change 3912470 by Ben.Zeigler #jira UE-55586 Fix issue with saving redirected soft object paths where the export sort could accidentally cause the parent CDO to get modified between name tagging and writing exports, which is unsafe because due to delta serialization it would try to write names that were not previously tagged Change 3913045 by Marc.Audy Fix issues where recursion in to child actors wasn't being handled correctly Change 3913398 by Fred.Kimberley Fixes a misspelled name for one of the classes in the ability system. PR #4430: Fixed spelling of FGameplayAbilityInputBinds. (Contributed by IntegralLee) #github #jira UE-54327 Change 3918016 by Fred.Kimberley Ensure AllocGameplayEffectContext is being used in all cases where FGameplayeEffectContext is being created. #jira UE-52668 PR #4250: Only create FGameplayEffectContext via AbilitySystemGlobals::.AllocGameplayEffectContext (Contributed by slonopotamus) #github Change 3924653 by Mieszko.Zielinski Fixed LoadEngineClass local to UnrealEngine.cpp to check class redirects before falling back to default class instance #UE4 #jira UE-55378 Change 3925614 by Phillip.Kavan Fix ForEachEnum node to skip over hidden enum values in new placements by default. Change summary: - Added FKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() as an internal-only Blueprint node support API. - Modified FForExpandNodeHelper::AllocateDefaultPins() to add a "Skip Hidden" input pin (advanced). Pin default value is false. - Added a UK2Node_ForEachElementInEnum::PostPlacedNewNode() override to set the default value of the "Skip Hidden" input pin to 'true' for all new node placements. - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include additional expansion logic based on the "Skip Hidden" input pin. For new placements (i.e. when the pin defaults to 'true'), an intermediate branch node will now be inserted into the compiled execution sequence to test for "hidden" metadata on the value before executing the loop body. If the input pin is linked, another intermediate branch will be inserted into the execution sequence prior to the "hidden" metadata test. All existing placements of the node will remain as-is after compilation (i.e. no additional intermediate branch nodes will be included in the expansion). #jira UE-34563 Change 3925649 by Marc.Audy Fix up issue post merge from Main with navigation system refactor Change 3926293 by Phillip.Kavan Temp fix to unblock CIS. #jira UE-34563 Change 3926523 by Marc.Audy Ensure that a renamed Actor is in the correct Actors array #jira UE-46718 Change 3928732 by Fred.Kimberley Unshelved from pending changelist '3793298': #jira UE-53136 PR #4287: virtual additions for AttributeSet extendability (Contributed by TWIDan) #github Change 3928780 by Marc.Audy PR #4309: The display names of the functions. (Contributed by SertacOgan) #jira UE-53334 Change 3929730 by Joseph.Wysosky Submitting test assets for the new Blueprint Structure test cases Change 3931919 by Joseph.Wysosky Deleting BasicStructure asset to rest MemberVariables back to default settings Change 3931922 by Joseph.Wysosky Adding BasicStructure test asset back with default members Change 3932083 by Phillip.Kavan Fix Compositing plugin source files to conform to updated relative include path specifications. - Encountered while testing Blueprint nativization of assets with dependencies on Composure/LensDistortion APIs. Change 3932196 by Dan.Oconnor Resetting a property to default now uses the same codepath as assigning the value from the slate control #jira UE-55909 Change 3932408 by Lukasz.Furman fixed behavior tree services attached to task nodes being sometimes recognized as root level #jira nope Change 3932808 by Marc.Audy PR #4083: Change to UK2Node_BaseAsyncTask to have pin tooltips on latent nodes (Contributed by dwrpayne) #jira UE-50871 Change 3934101 by Phillip.Kavan Revise ForEachEnum node expansion logic to exclude hidden values at compile time. Change summary: - Removed UKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() (no longer in use). - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include an enum switch node in the expansion, which will exclude hidden values when constructed. The additional expansion will occur if the enum type contains at least one hidden value. #jira UE-34563 Change 3934106 by Phillip.Kavan Mirrored 4.19 fixes to allow for EngineTest iteration w/ nativization enabled. Change summary: - Mirrored CLs 3876918, 3878968, 3883257, 3885566, 3912161 and 3920519. Change 3934116 by Phillip.Kavan UBT: Explicitly define the DEPRECATED_FORGAME macro only for non-engine modules. Change summary: - Modified UEBuildModule.SetupPrivateCompileEnvironment() to check the 'bTreatAsEngineModule' flag from the rules assembly rather than testing the module's build type. Change 3934382 by Phillip.Kavan Avoid inclusion of monolothic engine header files in nativized Blueprint codegen. Change 3936387 by Mieszko.Zielinski Added a flag to NavModifierComponent to control whether agent's height is being used while expadning modifier's bounds during navmesh generation #UE4 Change 3936905 by Ben.Marsh Disable IncludeTool warning for DEPRECATED_FORGAME macro; we expect this to be different for game modules. Change 3940537 by Marc.Audy Don't allow maps, sets, or arrays with an actor inner type in user defined structs to select an actor from the currently open level as default value. #jira UE-55938 Change 3940901 by Marc.Audy Properly name CVar global to reflect what it is for Change 3943043 by Marc.Audy Fix world context functions not being able to be used in CheatManager derived blueprints #jira UE-55787 Change 3943075 by Mieszko.Zielinski Moved path-following related delegats' interface from NavigationSystemBase over to a new IPathFollowingManagerInterface #UE4 Change 3943089 by Mieszko.Zielinski Fixed how WorldSettings.NavigationSystemConfig gets created #UE4 Made it so that there's always a NavigationSystemConfig instance present, but added a 'Null' config - this was required due to issues with creation/serialization of instanced subobjects. The change required adding copying constructors to FNavAgentProperties and FNavDataConfig. Also, fixed FNavAgentProperties.IsEquivalent to be symetrical. Change 3943225 by Marc.Audy Fix spelling of Implements Change 3950813 by Marc.Audy Include owner in attachment mismatch ensure #jira UE-56148 Change 3950996 by Marc.Audy Fix cases where bit packed properties used the entire byte not just the bit when interacting with boolean arrays #jira UE-55482 Change 3952086 by Marc.Audy PR #4483: Add Missing Radial Damage Multicast Delegate (Contributed by error454) #jira UE-54974 Change 3952720 by Marc.Audy PR #4575: Check if *Pawn* is a null Pointer (Contributed by dani9bma) #jira UE-56248 Change 3952804 by Richard.Hinckley Changes to BP API export commandlet to support better plugin exporting. Contributed by Harry Wang of Google. Change 3952962 by Marc.Audy UHT now validates that ExpandEnumAsExecs references a valid parameter to the function. #jira UE-49610 Change 3952977 by Phillip.Kavan Fix EDL cycle at load time in nativized cooked builds when a circular dependency exists between converted and unconverted assets. Change summary: - Added FGatherConvertedClassDependencies::MarkUnconvertedClassAsNecessary(). - Modified FFindAssetsToInclude::MaybeIncludeObjectAsDependency() to mark unconverted BPGCs (e.g. DOBPs) as necessary for conversion when the potential for a circular dependency exists so that we generate stub wrappers rather than depend on them directly. - Fixed a few typos in existing API names. #jira UE-48233 Change 3953658 by Marc.Audy (4.19.1) Fix inserting a reroute node causing connections to break on a GetClassDefaults node #jira UE-56270 Change 3954727 by Marc.Audy Add friendly name to custom version mismatch message Change 3954906 by Marc.Audy (4.19.1) Fix crash when undoing changes related to reroute nodes connected to a GetClassDefaults node #jira UE-56313 Change 3954997 by Marc.Audy Ensure and return null if GetOuter<WithinClass> is called on a CDO for uclasses declared as within another so we don't get a UPackage c-style cast to the expected outer type Change 3955091 by Marc.Audy Do not register subcomponents that are not auto register #jira UE-52878 Change 3955943 by Marc.Audy Make AbilitySystemComponent pass parameters by const& instead of ref as no state is being changed Change 3956185 by Zak.Middleton #ue4 - Fix Characters using scoped movement updates (the default) not visually rotating when rotated at small rates at high framerate. This was caused by FScopedMovementUpdate::IsTransformDirty() using a larger FTransform comparison tolerance than USceneComponent::UpdateComponentToWorldWithParent(). #jira none Change 3958102 by Marc.Audy Clean out dead code path from k2node_select Select node now resets pins to wildcard if none of the pins are in use Change 3958113 by Lukasz.Furman added OnSearchStart call to root level behavior tree services #jira UE-56257 Change 3958361 by Marc.Audy Fix literal input pins on select being set to wildcard during compilation Change 3961148 by Dan.Oconnor Mirror 3961139 from Release 4.19 Fix for placeholder objects being left behind when loading certain UMG assets - this could causea crash when loading UMG assets #jira UE-55742 Change 3961640 by Marc.Audy Select node now displays Add Pin button Undo of changing select node index type now works correctly. Connections to option pins now maintained across change of index pin type #jira UE-20742 Change 3962262 by Marc.Audy Display "Object Reference" instead of "Object Object Reference" and "Soft Object Reference" instead of "Object Soft Object Reference" Change 3962795 by Phillip.Kavan Fix for a crash when cooking with Blueprint nativization enabled after encountering a nested instanced editor-only default subobject inherited from a native C++ base class. - Mirrored from //UE4/Release-4.19 (3962782) #jira UE-56316 Change 3962991 by Marc.Audy Modify Negate/Increment/Decrement Int/Float so that the output is always the desired result even if a non-mutable pin is passed in. Note that this can mean the result being returned and the value of the pin passed in if queried again will not be the same (in the case of pure nodes). #jira UE-54807 Change 3963114 by Marc.Audy Fix ensures/crash as a result of UClass expecting to be able to access the UPackage of CDOs via the GetOuterUPackage call. Change 3963427 by Marc.Audy Fix initialization order Initialize bUseBackwardsCompatForEmptyAutogeneratedValue Change 3963781 by Marc.Audy Fix without editor compiles Change 3964576 by Marc.Audy PR #4599: : Working category for timelines (Contributed by projectgheist) #jira UE-56460 #jira UE-26053 Change 3964782 by Dan.Oconnor Mirror 3964772 from Release 4.19 Fix crash when force deleting certain blueprints, we can only check for authoritativeness while reinstancing #jira UE-56447 Change 3965156 by Mieszko.Zielinski PR #4592: Visual Logger optimization to fix rapid FPS drop when many items are hidden (Contributed by tstaples) #jira UE-56435 Change 3965173 by Marc.Audy (4.19.1) Fix incorrectly switching a cooling down tick to be an enabled tick when marking it enabled. #jira UE-56431 Change 3966117 by Marc.Audy Fix select nodes inside macros using wildcard array inputs having issues resolving type. #jira UE-56484 Change 3878901 by Mieszko.Zielinski NavigationSystem's code refactored out of the engine and into a new separate module #UE4 The CL contains required changes to all of our internal projects. Fortnite and Paragon have been tested, while the rest have been only compiled. Change 3879409 by Mieszko.Zielinski Further fallout fixes after ripping out NavigationSystem out of the engine #UE4 - Fixed bad ini redirects (had NavigationSystem.NavigationSystem instead of NavigationSystem.NavigationSystemV1) - Added missing FNavigationSystem::GetDefaultNavDataClass binding (resulting in QAGame's func tests failing) Change 3897655 by Ben.Zeigler #jira UE-55211 Fix it so literal soft object pins on blueprint nodes get correctly cooked/referenced It now sets the thread context to skip internal serialize and calls the archive's serialize function instead of bypassing it, which allows it to pick up references Change 3962780 by Marc.Audy When preventing a split pin from being orphaned, all sub pins must also be prevented. #jira UE-56328 Repack members of UEdGraphPin to avoid wasted space (saves 16bytes) [CL 3967553 by Marc Audy in Main branch]
2018-03-27 14:27:07 -04:00
(NavCollisionInstance->GetTriMeshCollision().VertexBuffer.Num() == 0 && NavCollisionInstance->GetConvexCollision().VertexBuffer.Num() == 0))
{
NavCollisionInstance->GatherCollision();
}
FMemoryWriter Ar( OutData );
uint8 bLittleEndian = PLATFORM_LITTLE_ENDIAN;
Ar << bLittleEndian;
int64 CookedMeshInfoOffset = Ar.Tell();
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3967517) #rb none #lockdown Nick.Penwarden #rnx ============================ MAJOR FEATURES & CHANGES ============================ Change 3804281 by Fred.Kimberley Improve contrast on watches in blueprints. Change 3804322 by Fred.Kimberley First pass at adding a watch window for blueprint debugging. Change 3804737 by mason.seay Added some Descriptions to tests that didn't have any, and fixed some typos Change 3806103 by mason.seay Moved and Renamed Timers test map and content appropriately Change 3806164 by Fred.Kimberley Add missing property types to GetDebugInfoInternal. #jira UE-53355 Change 3806617 by Dan.Oconnor Function Terminator (and derived types) now use FMemberReference instead of a UClass/FName pair. This fixes various bugs when resolving the UFunction referenced by the function terminator #jira UE-31754, UE-42431, UE-53315, UE-53172 Change 3808541 by Fred.Kimberley Add support for redirecting user defined enums. This is in response to the following UDN thread: https://udn.unrealengine.com/questions/404141/is-is-possible-to-create-a-redirector-from-a-bluep.html Change 3808565 by mason.seay Added a few more struct tests Change 3809840 by mason.seay Renamed CharacterMovement.umap to CharacterCollision. Fixed up content to reflect this change. Change 3809847 by mason.seay Added Object Timer tests. Fixed up existing timer test to remove delay dependency Change 3811704 by Ben.Zeigler Fix issue where identical enum redirects registered to different initial names would throw an incorrect error, it's fine if the value change maps are identical Change 3811946 by Ben.Zeigler #jira UE-53511 Fix it so it is possible to set a user defined struct value back to it's default. The UDS hack in PropertyValueToString is no longer needed, but this could affect some other user struct editor operations Change 3812061 by Dan.Oconnor Stepping over or in to nodes that are expanded at compile time (e.g. event nodes, spawn actor nodes) no longer requires multiple 'steps' #jira UE-52854 Change 3812259 by Dan.Oconnor Fix asset broken by removal of an unkown enum #jira UE-51419 Change 3812904 by Ben.Zeigler Make ResolveRedirects on StreamableManager public as it can be used to validate things Change 3812958 by Ben.Zeigler #jira UE-52977 Fix crashes when binding blueprint editor commands to keys and using from invalid contexts Change 3812975 by Mieszko.Zielinski Added contraptions to catch a rare eidtor-time EQS crash #UE4 #jira UE-53468 Change 3818530 by Phillip.Kavan Fix incorrect access to nested instanced subobjects in nativized Blueprint ctor codegen. Change summary: - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to properly reference the outer and check ptr validity when creating/obtaining nested default subobjects. - Modified FEmitDefaultValueHelper::HandleClassSubobject() to better guard against code generation based on an invalid local variable name. #jira UE-52167 Change 3819733 by Mieszko.Zielinski Marked UAISenseConfig_Blueprint and UAISense_Blueprint as hidedropdown #UE4 #jira UE-15089 Change 3821776 by Marc.Audy Remove redundent code in SpawnActorFromClass that already exists in ConstructObjectFromClass parent class Change 3823851 by mason.seay Moved and renamed blueprints used for Object Reference testing Change 3824165 by Phillip.Kavan Ensure that subobject class types are constructed prior to accessing a subobject CDO in a nativized Blueprint class's generated ctor at runtime. Change summary: - Modified FFakeImportTableHelper to tag subobject class types as a preload dependency of the outer converted Blueprint class type and not of the CDO. #jira UE-53111 Change 3830309 by mason.seay Created Literal Gameplay Tag Container test Change 3830562 by Phillip.Kavan Blueprint nativization bug fixes (reviewed/taken from PR). Change summary: - Modified FSafeContextScopedEmitter::ValidationChain() to ensure that generated code calls the global IsValid() utility function on objects. - Modified FBlueprintCompilerCppBackend::EmitCreateArrayStatement() to generate a proper cast on MakeArray node inputs for enum class types. - Modified FBlueprintCompilerCppBackend::EnimCallStatementInner() to more correctly identify an interface function call site. - Modified FEmitHelper::GenerateAutomaticCast() to properly handle automatic casts of enum arrays. - (Modified from PR source) Added new FComponentDataUtils statics to consolidate custom init code generation for converted special-case component types (e.g. BodyInstance). Ties native component DSOs to the same pre/post as converted non-native component templates around the OuterGenerate() loop. - Modified FExposeOnSpawnValidator::IsSupported() to include CPT_SoftObjectReference property types. - Modified UBlueprintGeneratedClass::CheckAndApplyComponentTemplateOverrides() to no longer break out of the loop before finding additional ICH override record matches. #4202 #jira UE-52188 Change 3830579 by Fred.Kimberley Add support for turning off multiple watches at once in the watch window. #jira UE-53852 Change 3836047 by Zak.Middleton #ue4 - Dev test maps for overlaps perf tests. Change 3836768 by Phillip.Kavan Fix for a build failure that could occur with Blueprint nativization enabled and EDL disabled. This was a regression introduced in 4.18. Change summary: - Modified FEmitDefaultValueHelper::AddStaticFunctionsForDependencies() to emit the correct signature for constructing FBlueprintDependencyData elements when the EDL boot time optimization is disabled. #jira UE-53908 Change 3838085 by mason.seay Functional tests around basic blueprint functions Change 3840489 by Ben.Zeigler #jira UE-31662 Fix regression with renaming parent inherited function. It was not correctly searching the parent's skeleton class during the child's recompile so it was erroneously detecting the parent function as missing Change 3840648 by mason.seay Updated Descriptions on tests Change 3842914 by Ben.Zeigler Improve comments around stremable handle cancel/release Change 3850413 by Ben.Zeigler Fix asset registry memory reporting, track some newer fields and correctly report the state size instead of static size twice Copy of CL #3849610 Change 3850426 by Ben.Zeigler Reduce asset registry memory in cooked build by stripping out searchable names and empty dependency nodes by default Add option to strip dependency data for asset data with no tags, this was always true before but isn't necessarily safe Copy of CL #3850389 Change 3853449 by Phillip.Kavan Fix a scoping issue for local instanced subobject references in nativized Blueprint C++ code. Also, don't emit redundant assignment statements for instanced subobject reference properties. Change summary: - Consolidated FComponentDataUtils into FDefaultSubobjectData and extended FNonativeComponentData from it in order to handle both native & non-native DSO initialization codegen through a more common interface. - Exposed FEmitDefaultValueHelper::HandleInstancedSubobject() as a public API and added a 'SubobjectData' parameter to allow initialization codegen to be deferred until after all default subobjects have been mapped to local variables within the current scope. - Modified FEmitDefaultValueHelper::GenerateConstructor() to first map all default subobjects to local variables and then emit any delta initialization code for property values. - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to return an empty string for an instanced reference to a default subobject. This allows us to avoid emitting initialization statements to unnecessarily reassign instances back to the same property. - Modified FEmitDefaultValueHelper::InnerGenerate() to better handle instanced references to default subobjects, ensuring that we don't emit unnecessary assignment statements and array initialization code to the converted class constructor in C++. - Fixed a few typos. #jira UE-53960 Change 3853465 by Phillip.Kavan Fix plugin module C++ source template to conform to recent public include path changes. Change 3857599 by Marc.Audy PR #4438: UE-54281: Make None a valid default value to select (Contributed by projectgheist) #jira UE-54281 #jira UE-54399 Change 3863259 by Zak.Middleton #ue4 - Save bandwidth for replicated characters by only replicating 4 byte timestamp value to clients if it's actually needed for Linear smoothing. Added option to always replicate the timestamp ("bNetworkAlwaysReplicateTransformUpdateTimestamp", default off), in case users still want this timestamp for some reason, or if smoothing mode changes dynamically and the server won't know. #jira UE-46293 Change 3863491 by Zak.Middleton #ue4 - Reduce network RPC overhead for players that are not moving. Added ClientNetSendMoveDeltaTimeStationary (default 12Hz) to supplement existing ClientNetSendMoveDeltaTime and ClientNetSendMoveDeltaTimeThrottled. UCharacterMovementComponent::GetClientNetSendDeltaTime() now uses this time if Acceleration and Velocity are zero, and the control rotation matches the last ack'd control rotation from the server. Also fixed up code default for ClientNetSendMoveDeltaTime to match default INI value. #jira UE-21264 Change 3865325 by Zak.Middleton #ue4 - Fix static analysis warning about possible null PC pointer. #jira none Change 3869828 by Ben.Zeigler #jira UE-54786 Fix it so -cookonthefly cooperates with -iterate by writing out a development asset registry Change 3869969 by mason.seay Character Movement Functional Tests Change 3870099 by Mason.Seay Submitted asset deletes Change 3870105 by mason.seay Removed link to anim blueprint to fix errors Change 3870238 by mason.seay Test map for Async Loading in a Loop Change 3870479 by Ben.Zeigler Add code to check CoreRedirects for SoftObjectPaths when saving or resolving in the editor. This is a bit slow so we don't want to do it on load We don't have any good way to know the type of a path so I check both Object and Class redirectors, which will also pickup Module renames Change 3875224 by mason.seay Functional tests for Event BeginPlay execution order Change 3875409 by mason.seay Optimized and fixed up character movement tests (because a potential bug in FunctionalTestActor is always passing a test when it can fail) Change 3878947 by Mieszko.Zielinski CIS fixes #UE4 Change 3879000 by Mieszko.Zielinski More CIS fixes #UE4 Change 3879139 by Mieszko.Zielinski Even moar CIS fixes #UE4 Change 3879742 by mason.seay Added animation to Nativization Widget asset Change 3880198 by Zak.Middleton #ue4 - CanCrouchInCurrentState() returns false when character capsule is simulating physics. #jira UE-54875 github #4479 Change 3880266 by Zak.Middleton #ue4 - Optimize UpdateCharacterStateBeforeMovement() to do cheaper tests earlier (avoid CanCrouchInCurrentState() unless necessary, now that it tests IsSimulatingPhysics() which is not trivial). #jira UE-54875 Change 3881546 by Mieszko.Zielinski *.Build.cs files clean up - removed redundant dependencies from NavigationSystem and AIModule #UE4 Change 3881547 by Mieszko.Zielinski Removed a bunch of DEPRECATED functions from the new NavigationSystem module #UE4 Removed all deprecates prior 4.15 (picked this one because I do know some licencees are still using it). Change 3881742 by mason.seay Additional crouch test to cover UE-54875 Change 3881794 by Mieszko.Zielinski Fixed a bug in FVisualLoggerHelpers::GetCategories resulting in losing verbosity information #UE4 Change 3884503 by Mieszko.Zielinski Fixed TopDown code template to make it compile after navsys refactor #UE4 #jira UE-55039 Change 3884507 by Mieszko.Zielinski Switched ensures in UNavigationSystemV1:SimpleMoveToX to error-level logs #UE4 It's an error rather than a warning because the functions no longer do anything. Making it work would require a cyclic dependency between NavigationSystem and AIModule. #jira UE-55033 Change 3884594 by Mieszko.Zielinski Added a const FNavigationSystem::GetCurrent version #UE4 lack of it was causing KiteDemo to not compile. Change 3884602 by Mieszko.Zielinski Mac editor compilation fix #UE4 Change 3884615 by Mieszko.Zielinski Fixed FAIDataProviderValue::GetRawValuePtr not being accessible from outside of AIModule #UE4 Change 3885254 by Mieszko.Zielinski Guessfix for UE-55030 #UE4 The name of NavigationSystem module was put in wrong in the IMPLEMENT_MODULE macro #jira 55030 Change 3885286 by Mieszko.Zielinski Changed how NavigationSystem module includes DerivedDataCache module #UE4 #jira UE-55035 Change 3885492 by mason.seay Minor tweaks to animation Change 3885773 by mason.seay Resaving assets to clear out warning Change 3886433 by Mieszko.Zielinski Fixed TP_TopDownBP's player controller BP to not use deprecated nav functions #UE4 #jira UE-55108 Change 3886783 by Mieszko.Zielinski Removed silly inclusion of NavigationSystemTypes.h from NavigationSystemTypes.h #UE4 Change 3887019 by Mieszko.Zielinski Fixed accessing unchecked pointer in ANavigationData::OnNavAreaAdded #UE4 Change 3891031 by Mieszko.Zielinski Fixed missing includes in NavigationSystem.cpp #UE4 Change 3891037 by Mieszko.Zielinski ContentEample's navigation fix #UE4 #jira UE-55109 Change 3891044 by Mieszko.Zielinski PR #4456: Fix bug in UAISense_Sight::OnListenerForgetsActor (Contributed by maxtunel) #UE4 Change 3891598 by mason.seay Resaving assets to clear out "empty engine version" spam Change 3891612 by mason.seay Fixed deprecated Set Text warnings Change 3893334 by Mieszko.Zielinski Fixed a bug in navmesh generation resulting in not removing layers that ended up empty after rebuilding #UE4 #jira UE-55041 Change 3893394 by Mieszko.Zielinski Fixed navmesh debug drawing to properly display octree elements with "per instance transforms" (like instanced SMs) #UE4 Also, added a more detailed debug drawing of navoctree contents (optional, but on by default). Change 3893395 by Mieszko.Zielinski Added a bit of code to navigation system's initialization that checks the enegine ini for sections refering to the moved navigation classes, and complain about it #UE4 The message is printed as an error-level log line and it says what should the offending section be renamed to. Change 3895563 by Dan.Oconnor Mirror 3895535 Append history from previous branches in source control history view #jira none Change 3896930 by Mieszko.Zielinski Added an option to tick navigation system while the game is paused #UE4 Controlled via NavigationSystemV1.bTickWhilePaused, ini- and ProjectSettings-configurable. #jira UE-39275 Change 3897554 by Mieszko.Zielinski Unified how NavMeshRenderingComponent draws navmesh and octree collision's polys #UE4 Change 3897556 by Mieszko.Zielinski Fixed what kind of nav tile bounds we're sending to nav-colliding elements when calling 'per-instance transform' delegate #UE4 #jira UE-45261 Change 3898064 by Mieszko.Zielinski Made SM Editor display AI-navigation-related whenever bHasNavigationData is set to true #UE4 #jira UE-50436 Change 3899004 by Mieszko.Zielinski Fixed UEnvQueryItemType_Actor::GetItemLocation and UEnvQueryItemType_Actor::GetItemRotation to return FAISystem::InvalidLocation and FAISystem::InvalidRotation respectively instead of '0' when hosted Actor ptr is null #UE4 Note for programmers: this changes the default behavior of this edge case. You might want to go through your code and check if you're comparing UEnvQueryItemType_Actor::GetItem*'s results to 0. Change 3901733 by Mieszko.Zielinski Made FEnvQueryInstance::PrepareContext implementations returning vectors and rotators ignore InvalidLocation and InvalidRotation (respectively) #UE4 Change 3901925 by Ben.Zeigler #jira UE-55395 Fix issue where the cooker could load asset registry caches made in -game that do not have dependency data, leading to broken cooks Change 3902166 by Marc.Audy Make ULevel::GetWorld final Change 3902749 by Ben.Zeigler Fix it so pressing refresh button in asset audit window actually refreshes the asset management database Change 3902763 by Ben.Zeigler #jira UE-55407 Fix it so editor tutorials are not cooked unless referenced, by correctly marking soft object paths imported from editor project settings as editor-only Change 3905578 by Phillip.Kavan The UX to add a new parameter on a Blueprint delegate is now at parity with Blueprint functions. #4392 #jira UE-53779 Change 3905848 by Phillip.Kavan First pass of the experimental Blueprint graph bookmarks feature. #jira UE-10052 Change 3906025 by Phillip.Kavan CIS fix. Change 3906195 by Phillip.Kavan Add missing icon file. Change 3906356 by Phillip.Kavan Moved Blueprint bookmarks enable flag into EditorExperimentalSettings for consistency with other options. Change 3910628 by Ben.Zeigler Partial fix for UE-55363, this allows references to ObjectRedirectors to be switched from parent class to a child class on load as this should always be safe This does not actually fix UE-55363 because that case is changing from UMaterial to UMaterialInstanceConstant, and those are siblings instead of parent/child Change 3912470 by Ben.Zeigler #jira UE-55586 Fix issue with saving redirected soft object paths where the export sort could accidentally cause the parent CDO to get modified between name tagging and writing exports, which is unsafe because due to delta serialization it would try to write names that were not previously tagged Change 3913045 by Marc.Audy Fix issues where recursion in to child actors wasn't being handled correctly Change 3913398 by Fred.Kimberley Fixes a misspelled name for one of the classes in the ability system. PR #4430: Fixed spelling of FGameplayAbilityInputBinds. (Contributed by IntegralLee) #github #jira UE-54327 Change 3918016 by Fred.Kimberley Ensure AllocGameplayEffectContext is being used in all cases where FGameplayeEffectContext is being created. #jira UE-52668 PR #4250: Only create FGameplayEffectContext via AbilitySystemGlobals::.AllocGameplayEffectContext (Contributed by slonopotamus) #github Change 3924653 by Mieszko.Zielinski Fixed LoadEngineClass local to UnrealEngine.cpp to check class redirects before falling back to default class instance #UE4 #jira UE-55378 Change 3925614 by Phillip.Kavan Fix ForEachEnum node to skip over hidden enum values in new placements by default. Change summary: - Added FKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() as an internal-only Blueprint node support API. - Modified FForExpandNodeHelper::AllocateDefaultPins() to add a "Skip Hidden" input pin (advanced). Pin default value is false. - Added a UK2Node_ForEachElementInEnum::PostPlacedNewNode() override to set the default value of the "Skip Hidden" input pin to 'true' for all new node placements. - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include additional expansion logic based on the "Skip Hidden" input pin. For new placements (i.e. when the pin defaults to 'true'), an intermediate branch node will now be inserted into the compiled execution sequence to test for "hidden" metadata on the value before executing the loop body. If the input pin is linked, another intermediate branch will be inserted into the execution sequence prior to the "hidden" metadata test. All existing placements of the node will remain as-is after compilation (i.e. no additional intermediate branch nodes will be included in the expansion). #jira UE-34563 Change 3925649 by Marc.Audy Fix up issue post merge from Main with navigation system refactor Change 3926293 by Phillip.Kavan Temp fix to unblock CIS. #jira UE-34563 Change 3926523 by Marc.Audy Ensure that a renamed Actor is in the correct Actors array #jira UE-46718 Change 3928732 by Fred.Kimberley Unshelved from pending changelist '3793298': #jira UE-53136 PR #4287: virtual additions for AttributeSet extendability (Contributed by TWIDan) #github Change 3928780 by Marc.Audy PR #4309: The display names of the functions. (Contributed by SertacOgan) #jira UE-53334 Change 3929730 by Joseph.Wysosky Submitting test assets for the new Blueprint Structure test cases Change 3931919 by Joseph.Wysosky Deleting BasicStructure asset to rest MemberVariables back to default settings Change 3931922 by Joseph.Wysosky Adding BasicStructure test asset back with default members Change 3932083 by Phillip.Kavan Fix Compositing plugin source files to conform to updated relative include path specifications. - Encountered while testing Blueprint nativization of assets with dependencies on Composure/LensDistortion APIs. Change 3932196 by Dan.Oconnor Resetting a property to default now uses the same codepath as assigning the value from the slate control #jira UE-55909 Change 3932408 by Lukasz.Furman fixed behavior tree services attached to task nodes being sometimes recognized as root level #jira nope Change 3932808 by Marc.Audy PR #4083: Change to UK2Node_BaseAsyncTask to have pin tooltips on latent nodes (Contributed by dwrpayne) #jira UE-50871 Change 3934101 by Phillip.Kavan Revise ForEachEnum node expansion logic to exclude hidden values at compile time. Change summary: - Removed UKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() (no longer in use). - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include an enum switch node in the expansion, which will exclude hidden values when constructed. The additional expansion will occur if the enum type contains at least one hidden value. #jira UE-34563 Change 3934106 by Phillip.Kavan Mirrored 4.19 fixes to allow for EngineTest iteration w/ nativization enabled. Change summary: - Mirrored CLs 3876918, 3878968, 3883257, 3885566, 3912161 and 3920519. Change 3934116 by Phillip.Kavan UBT: Explicitly define the DEPRECATED_FORGAME macro only for non-engine modules. Change summary: - Modified UEBuildModule.SetupPrivateCompileEnvironment() to check the 'bTreatAsEngineModule' flag from the rules assembly rather than testing the module's build type. Change 3934382 by Phillip.Kavan Avoid inclusion of monolothic engine header files in nativized Blueprint codegen. Change 3936387 by Mieszko.Zielinski Added a flag to NavModifierComponent to control whether agent's height is being used while expadning modifier's bounds during navmesh generation #UE4 Change 3936905 by Ben.Marsh Disable IncludeTool warning for DEPRECATED_FORGAME macro; we expect this to be different for game modules. Change 3940537 by Marc.Audy Don't allow maps, sets, or arrays with an actor inner type in user defined structs to select an actor from the currently open level as default value. #jira UE-55938 Change 3940901 by Marc.Audy Properly name CVar global to reflect what it is for Change 3943043 by Marc.Audy Fix world context functions not being able to be used in CheatManager derived blueprints #jira UE-55787 Change 3943075 by Mieszko.Zielinski Moved path-following related delegats' interface from NavigationSystemBase over to a new IPathFollowingManagerInterface #UE4 Change 3943089 by Mieszko.Zielinski Fixed how WorldSettings.NavigationSystemConfig gets created #UE4 Made it so that there's always a NavigationSystemConfig instance present, but added a 'Null' config - this was required due to issues with creation/serialization of instanced subobjects. The change required adding copying constructors to FNavAgentProperties and FNavDataConfig. Also, fixed FNavAgentProperties.IsEquivalent to be symetrical. Change 3943225 by Marc.Audy Fix spelling of Implements Change 3950813 by Marc.Audy Include owner in attachment mismatch ensure #jira UE-56148 Change 3950996 by Marc.Audy Fix cases where bit packed properties used the entire byte not just the bit when interacting with boolean arrays #jira UE-55482 Change 3952086 by Marc.Audy PR #4483: Add Missing Radial Damage Multicast Delegate (Contributed by error454) #jira UE-54974 Change 3952720 by Marc.Audy PR #4575: Check if *Pawn* is a null Pointer (Contributed by dani9bma) #jira UE-56248 Change 3952804 by Richard.Hinckley Changes to BP API export commandlet to support better plugin exporting. Contributed by Harry Wang of Google. Change 3952962 by Marc.Audy UHT now validates that ExpandEnumAsExecs references a valid parameter to the function. #jira UE-49610 Change 3952977 by Phillip.Kavan Fix EDL cycle at load time in nativized cooked builds when a circular dependency exists between converted and unconverted assets. Change summary: - Added FGatherConvertedClassDependencies::MarkUnconvertedClassAsNecessary(). - Modified FFindAssetsToInclude::MaybeIncludeObjectAsDependency() to mark unconverted BPGCs (e.g. DOBPs) as necessary for conversion when the potential for a circular dependency exists so that we generate stub wrappers rather than depend on them directly. - Fixed a few typos in existing API names. #jira UE-48233 Change 3953658 by Marc.Audy (4.19.1) Fix inserting a reroute node causing connections to break on a GetClassDefaults node #jira UE-56270 Change 3954727 by Marc.Audy Add friendly name to custom version mismatch message Change 3954906 by Marc.Audy (4.19.1) Fix crash when undoing changes related to reroute nodes connected to a GetClassDefaults node #jira UE-56313 Change 3954997 by Marc.Audy Ensure and return null if GetOuter<WithinClass> is called on a CDO for uclasses declared as within another so we don't get a UPackage c-style cast to the expected outer type Change 3955091 by Marc.Audy Do not register subcomponents that are not auto register #jira UE-52878 Change 3955943 by Marc.Audy Make AbilitySystemComponent pass parameters by const& instead of ref as no state is being changed Change 3956185 by Zak.Middleton #ue4 - Fix Characters using scoped movement updates (the default) not visually rotating when rotated at small rates at high framerate. This was caused by FScopedMovementUpdate::IsTransformDirty() using a larger FTransform comparison tolerance than USceneComponent::UpdateComponentToWorldWithParent(). #jira none Change 3958102 by Marc.Audy Clean out dead code path from k2node_select Select node now resets pins to wildcard if none of the pins are in use Change 3958113 by Lukasz.Furman added OnSearchStart call to root level behavior tree services #jira UE-56257 Change 3958361 by Marc.Audy Fix literal input pins on select being set to wildcard during compilation Change 3961148 by Dan.Oconnor Mirror 3961139 from Release 4.19 Fix for placeholder objects being left behind when loading certain UMG assets - this could causea crash when loading UMG assets #jira UE-55742 Change 3961640 by Marc.Audy Select node now displays Add Pin button Undo of changing select node index type now works correctly. Connections to option pins now maintained across change of index pin type #jira UE-20742 Change 3962262 by Marc.Audy Display "Object Reference" instead of "Object Object Reference" and "Soft Object Reference" instead of "Object Soft Object Reference" Change 3962795 by Phillip.Kavan Fix for a crash when cooking with Blueprint nativization enabled after encountering a nested instanced editor-only default subobject inherited from a native C++ base class. - Mirrored from //UE4/Release-4.19 (3962782) #jira UE-56316 Change 3962991 by Marc.Audy Modify Negate/Increment/Decrement Int/Float so that the output is always the desired result even if a non-mutable pin is passed in. Note that this can mean the result being returned and the value of the pin passed in if queried again will not be the same (in the case of pure nodes). #jira UE-54807 Change 3963114 by Marc.Audy Fix ensures/crash as a result of UClass expecting to be able to access the UPackage of CDOs via the GetOuterUPackage call. Change 3963427 by Marc.Audy Fix initialization order Initialize bUseBackwardsCompatForEmptyAutogeneratedValue Change 3963781 by Marc.Audy Fix without editor compiles Change 3964576 by Marc.Audy PR #4599: : Working category for timelines (Contributed by projectgheist) #jira UE-56460 #jira UE-26053 Change 3964782 by Dan.Oconnor Mirror 3964772 from Release 4.19 Fix crash when force deleting certain blueprints, we can only check for authoritativeness while reinstancing #jira UE-56447 Change 3965156 by Mieszko.Zielinski PR #4592: Visual Logger optimization to fix rapid FPS drop when many items are hidden (Contributed by tstaples) #jira UE-56435 Change 3965173 by Marc.Audy (4.19.1) Fix incorrectly switching a cooling down tick to be an enabled tick when marking it enabled. #jira UE-56431 Change 3966117 by Marc.Audy Fix select nodes inside macros using wildcard array inputs having issues resolving type. #jira UE-56484 Change 3878901 by Mieszko.Zielinski NavigationSystem's code refactored out of the engine and into a new separate module #UE4 The CL contains required changes to all of our internal projects. Fortnite and Paragon have been tested, while the rest have been only compiled. Change 3879409 by Mieszko.Zielinski Further fallout fixes after ripping out NavigationSystem out of the engine #UE4 - Fixed bad ini redirects (had NavigationSystem.NavigationSystem instead of NavigationSystem.NavigationSystemV1) - Added missing FNavigationSystem::GetDefaultNavDataClass binding (resulting in QAGame's func tests failing) Change 3897655 by Ben.Zeigler #jira UE-55211 Fix it so literal soft object pins on blueprint nodes get correctly cooked/referenced It now sets the thread context to skip internal serialize and calls the archive's serialize function instead of bypassing it, which allows it to pick up references Change 3962780 by Marc.Audy When preventing a split pin from being orphaned, all sub pins must also be prevented. #jira UE-56328 Repack members of UEdGraphPin to avoid wasted space (saves 16bytes) [CL 3967553 by Marc Audy in Main branch]
2018-03-27 14:27:07 -04:00
Ar << NavCollisionInstance->GetMutableTriMeshCollision().VertexBuffer;
Ar << NavCollisionInstance->GetMutableTriMeshCollision().IndexBuffer;
Ar << NavCollisionInstance->GetMutableConvexCollision().VertexBuffer;
Ar << NavCollisionInstance->GetMutableConvexCollision().IndexBuffer;
Ar << NavCollisionInstance->ConvexShapeIndices;
Ar << NavCollisionInstance->Bounds;
// Whatever got cached return true. We want to cache 'failure' too.
return true;
}
FString FDerivedDataNavCollisionCooker::GetDebugContextString() const
{
if (NavCollisionInstance)
{
UObject* Outer = NavCollisionInstance->GetOuter();
if (Outer)
{
return Outer->GetFullName();
}
}
return FDerivedDataPluginInterface::GetDebugContextString();
}
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3967517) #rb none #lockdown Nick.Penwarden #rnx ============================ MAJOR FEATURES & CHANGES ============================ Change 3804281 by Fred.Kimberley Improve contrast on watches in blueprints. Change 3804322 by Fred.Kimberley First pass at adding a watch window for blueprint debugging. Change 3804737 by mason.seay Added some Descriptions to tests that didn't have any, and fixed some typos Change 3806103 by mason.seay Moved and Renamed Timers test map and content appropriately Change 3806164 by Fred.Kimberley Add missing property types to GetDebugInfoInternal. #jira UE-53355 Change 3806617 by Dan.Oconnor Function Terminator (and derived types) now use FMemberReference instead of a UClass/FName pair. This fixes various bugs when resolving the UFunction referenced by the function terminator #jira UE-31754, UE-42431, UE-53315, UE-53172 Change 3808541 by Fred.Kimberley Add support for redirecting user defined enums. This is in response to the following UDN thread: https://udn.unrealengine.com/questions/404141/is-is-possible-to-create-a-redirector-from-a-bluep.html Change 3808565 by mason.seay Added a few more struct tests Change 3809840 by mason.seay Renamed CharacterMovement.umap to CharacterCollision. Fixed up content to reflect this change. Change 3809847 by mason.seay Added Object Timer tests. Fixed up existing timer test to remove delay dependency Change 3811704 by Ben.Zeigler Fix issue where identical enum redirects registered to different initial names would throw an incorrect error, it's fine if the value change maps are identical Change 3811946 by Ben.Zeigler #jira UE-53511 Fix it so it is possible to set a user defined struct value back to it's default. The UDS hack in PropertyValueToString is no longer needed, but this could affect some other user struct editor operations Change 3812061 by Dan.Oconnor Stepping over or in to nodes that are expanded at compile time (e.g. event nodes, spawn actor nodes) no longer requires multiple 'steps' #jira UE-52854 Change 3812259 by Dan.Oconnor Fix asset broken by removal of an unkown enum #jira UE-51419 Change 3812904 by Ben.Zeigler Make ResolveRedirects on StreamableManager public as it can be used to validate things Change 3812958 by Ben.Zeigler #jira UE-52977 Fix crashes when binding blueprint editor commands to keys and using from invalid contexts Change 3812975 by Mieszko.Zielinski Added contraptions to catch a rare eidtor-time EQS crash #UE4 #jira UE-53468 Change 3818530 by Phillip.Kavan Fix incorrect access to nested instanced subobjects in nativized Blueprint ctor codegen. Change summary: - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to properly reference the outer and check ptr validity when creating/obtaining nested default subobjects. - Modified FEmitDefaultValueHelper::HandleClassSubobject() to better guard against code generation based on an invalid local variable name. #jira UE-52167 Change 3819733 by Mieszko.Zielinski Marked UAISenseConfig_Blueprint and UAISense_Blueprint as hidedropdown #UE4 #jira UE-15089 Change 3821776 by Marc.Audy Remove redundent code in SpawnActorFromClass that already exists in ConstructObjectFromClass parent class Change 3823851 by mason.seay Moved and renamed blueprints used for Object Reference testing Change 3824165 by Phillip.Kavan Ensure that subobject class types are constructed prior to accessing a subobject CDO in a nativized Blueprint class's generated ctor at runtime. Change summary: - Modified FFakeImportTableHelper to tag subobject class types as a preload dependency of the outer converted Blueprint class type and not of the CDO. #jira UE-53111 Change 3830309 by mason.seay Created Literal Gameplay Tag Container test Change 3830562 by Phillip.Kavan Blueprint nativization bug fixes (reviewed/taken from PR). Change summary: - Modified FSafeContextScopedEmitter::ValidationChain() to ensure that generated code calls the global IsValid() utility function on objects. - Modified FBlueprintCompilerCppBackend::EmitCreateArrayStatement() to generate a proper cast on MakeArray node inputs for enum class types. - Modified FBlueprintCompilerCppBackend::EnimCallStatementInner() to more correctly identify an interface function call site. - Modified FEmitHelper::GenerateAutomaticCast() to properly handle automatic casts of enum arrays. - (Modified from PR source) Added new FComponentDataUtils statics to consolidate custom init code generation for converted special-case component types (e.g. BodyInstance). Ties native component DSOs to the same pre/post as converted non-native component templates around the OuterGenerate() loop. - Modified FExposeOnSpawnValidator::IsSupported() to include CPT_SoftObjectReference property types. - Modified UBlueprintGeneratedClass::CheckAndApplyComponentTemplateOverrides() to no longer break out of the loop before finding additional ICH override record matches. #4202 #jira UE-52188 Change 3830579 by Fred.Kimberley Add support for turning off multiple watches at once in the watch window. #jira UE-53852 Change 3836047 by Zak.Middleton #ue4 - Dev test maps for overlaps perf tests. Change 3836768 by Phillip.Kavan Fix for a build failure that could occur with Blueprint nativization enabled and EDL disabled. This was a regression introduced in 4.18. Change summary: - Modified FEmitDefaultValueHelper::AddStaticFunctionsForDependencies() to emit the correct signature for constructing FBlueprintDependencyData elements when the EDL boot time optimization is disabled. #jira UE-53908 Change 3838085 by mason.seay Functional tests around basic blueprint functions Change 3840489 by Ben.Zeigler #jira UE-31662 Fix regression with renaming parent inherited function. It was not correctly searching the parent's skeleton class during the child's recompile so it was erroneously detecting the parent function as missing Change 3840648 by mason.seay Updated Descriptions on tests Change 3842914 by Ben.Zeigler Improve comments around stremable handle cancel/release Change 3850413 by Ben.Zeigler Fix asset registry memory reporting, track some newer fields and correctly report the state size instead of static size twice Copy of CL #3849610 Change 3850426 by Ben.Zeigler Reduce asset registry memory in cooked build by stripping out searchable names and empty dependency nodes by default Add option to strip dependency data for asset data with no tags, this was always true before but isn't necessarily safe Copy of CL #3850389 Change 3853449 by Phillip.Kavan Fix a scoping issue for local instanced subobject references in nativized Blueprint C++ code. Also, don't emit redundant assignment statements for instanced subobject reference properties. Change summary: - Consolidated FComponentDataUtils into FDefaultSubobjectData and extended FNonativeComponentData from it in order to handle both native & non-native DSO initialization codegen through a more common interface. - Exposed FEmitDefaultValueHelper::HandleInstancedSubobject() as a public API and added a 'SubobjectData' parameter to allow initialization codegen to be deferred until after all default subobjects have been mapped to local variables within the current scope. - Modified FEmitDefaultValueHelper::GenerateConstructor() to first map all default subobjects to local variables and then emit any delta initialization code for property values. - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to return an empty string for an instanced reference to a default subobject. This allows us to avoid emitting initialization statements to unnecessarily reassign instances back to the same property. - Modified FEmitDefaultValueHelper::InnerGenerate() to better handle instanced references to default subobjects, ensuring that we don't emit unnecessary assignment statements and array initialization code to the converted class constructor in C++. - Fixed a few typos. #jira UE-53960 Change 3853465 by Phillip.Kavan Fix plugin module C++ source template to conform to recent public include path changes. Change 3857599 by Marc.Audy PR #4438: UE-54281: Make None a valid default value to select (Contributed by projectgheist) #jira UE-54281 #jira UE-54399 Change 3863259 by Zak.Middleton #ue4 - Save bandwidth for replicated characters by only replicating 4 byte timestamp value to clients if it's actually needed for Linear smoothing. Added option to always replicate the timestamp ("bNetworkAlwaysReplicateTransformUpdateTimestamp", default off), in case users still want this timestamp for some reason, or if smoothing mode changes dynamically and the server won't know. #jira UE-46293 Change 3863491 by Zak.Middleton #ue4 - Reduce network RPC overhead for players that are not moving. Added ClientNetSendMoveDeltaTimeStationary (default 12Hz) to supplement existing ClientNetSendMoveDeltaTime and ClientNetSendMoveDeltaTimeThrottled. UCharacterMovementComponent::GetClientNetSendDeltaTime() now uses this time if Acceleration and Velocity are zero, and the control rotation matches the last ack'd control rotation from the server. Also fixed up code default for ClientNetSendMoveDeltaTime to match default INI value. #jira UE-21264 Change 3865325 by Zak.Middleton #ue4 - Fix static analysis warning about possible null PC pointer. #jira none Change 3869828 by Ben.Zeigler #jira UE-54786 Fix it so -cookonthefly cooperates with -iterate by writing out a development asset registry Change 3869969 by mason.seay Character Movement Functional Tests Change 3870099 by Mason.Seay Submitted asset deletes Change 3870105 by mason.seay Removed link to anim blueprint to fix errors Change 3870238 by mason.seay Test map for Async Loading in a Loop Change 3870479 by Ben.Zeigler Add code to check CoreRedirects for SoftObjectPaths when saving or resolving in the editor. This is a bit slow so we don't want to do it on load We don't have any good way to know the type of a path so I check both Object and Class redirectors, which will also pickup Module renames Change 3875224 by mason.seay Functional tests for Event BeginPlay execution order Change 3875409 by mason.seay Optimized and fixed up character movement tests (because a potential bug in FunctionalTestActor is always passing a test when it can fail) Change 3878947 by Mieszko.Zielinski CIS fixes #UE4 Change 3879000 by Mieszko.Zielinski More CIS fixes #UE4 Change 3879139 by Mieszko.Zielinski Even moar CIS fixes #UE4 Change 3879742 by mason.seay Added animation to Nativization Widget asset Change 3880198 by Zak.Middleton #ue4 - CanCrouchInCurrentState() returns false when character capsule is simulating physics. #jira UE-54875 github #4479 Change 3880266 by Zak.Middleton #ue4 - Optimize UpdateCharacterStateBeforeMovement() to do cheaper tests earlier (avoid CanCrouchInCurrentState() unless necessary, now that it tests IsSimulatingPhysics() which is not trivial). #jira UE-54875 Change 3881546 by Mieszko.Zielinski *.Build.cs files clean up - removed redundant dependencies from NavigationSystem and AIModule #UE4 Change 3881547 by Mieszko.Zielinski Removed a bunch of DEPRECATED functions from the new NavigationSystem module #UE4 Removed all deprecates prior 4.15 (picked this one because I do know some licencees are still using it). Change 3881742 by mason.seay Additional crouch test to cover UE-54875 Change 3881794 by Mieszko.Zielinski Fixed a bug in FVisualLoggerHelpers::GetCategories resulting in losing verbosity information #UE4 Change 3884503 by Mieszko.Zielinski Fixed TopDown code template to make it compile after navsys refactor #UE4 #jira UE-55039 Change 3884507 by Mieszko.Zielinski Switched ensures in UNavigationSystemV1:SimpleMoveToX to error-level logs #UE4 It's an error rather than a warning because the functions no longer do anything. Making it work would require a cyclic dependency between NavigationSystem and AIModule. #jira UE-55033 Change 3884594 by Mieszko.Zielinski Added a const FNavigationSystem::GetCurrent version #UE4 lack of it was causing KiteDemo to not compile. Change 3884602 by Mieszko.Zielinski Mac editor compilation fix #UE4 Change 3884615 by Mieszko.Zielinski Fixed FAIDataProviderValue::GetRawValuePtr not being accessible from outside of AIModule #UE4 Change 3885254 by Mieszko.Zielinski Guessfix for UE-55030 #UE4 The name of NavigationSystem module was put in wrong in the IMPLEMENT_MODULE macro #jira 55030 Change 3885286 by Mieszko.Zielinski Changed how NavigationSystem module includes DerivedDataCache module #UE4 #jira UE-55035 Change 3885492 by mason.seay Minor tweaks to animation Change 3885773 by mason.seay Resaving assets to clear out warning Change 3886433 by Mieszko.Zielinski Fixed TP_TopDownBP's player controller BP to not use deprecated nav functions #UE4 #jira UE-55108 Change 3886783 by Mieszko.Zielinski Removed silly inclusion of NavigationSystemTypes.h from NavigationSystemTypes.h #UE4 Change 3887019 by Mieszko.Zielinski Fixed accessing unchecked pointer in ANavigationData::OnNavAreaAdded #UE4 Change 3891031 by Mieszko.Zielinski Fixed missing includes in NavigationSystem.cpp #UE4 Change 3891037 by Mieszko.Zielinski ContentEample's navigation fix #UE4 #jira UE-55109 Change 3891044 by Mieszko.Zielinski PR #4456: Fix bug in UAISense_Sight::OnListenerForgetsActor (Contributed by maxtunel) #UE4 Change 3891598 by mason.seay Resaving assets to clear out "empty engine version" spam Change 3891612 by mason.seay Fixed deprecated Set Text warnings Change 3893334 by Mieszko.Zielinski Fixed a bug in navmesh generation resulting in not removing layers that ended up empty after rebuilding #UE4 #jira UE-55041 Change 3893394 by Mieszko.Zielinski Fixed navmesh debug drawing to properly display octree elements with "per instance transforms" (like instanced SMs) #UE4 Also, added a more detailed debug drawing of navoctree contents (optional, but on by default). Change 3893395 by Mieszko.Zielinski Added a bit of code to navigation system's initialization that checks the enegine ini for sections refering to the moved navigation classes, and complain about it #UE4 The message is printed as an error-level log line and it says what should the offending section be renamed to. Change 3895563 by Dan.Oconnor Mirror 3895535 Append history from previous branches in source control history view #jira none Change 3896930 by Mieszko.Zielinski Added an option to tick navigation system while the game is paused #UE4 Controlled via NavigationSystemV1.bTickWhilePaused, ini- and ProjectSettings-configurable. #jira UE-39275 Change 3897554 by Mieszko.Zielinski Unified how NavMeshRenderingComponent draws navmesh and octree collision's polys #UE4 Change 3897556 by Mieszko.Zielinski Fixed what kind of nav tile bounds we're sending to nav-colliding elements when calling 'per-instance transform' delegate #UE4 #jira UE-45261 Change 3898064 by Mieszko.Zielinski Made SM Editor display AI-navigation-related whenever bHasNavigationData is set to true #UE4 #jira UE-50436 Change 3899004 by Mieszko.Zielinski Fixed UEnvQueryItemType_Actor::GetItemLocation and UEnvQueryItemType_Actor::GetItemRotation to return FAISystem::InvalidLocation and FAISystem::InvalidRotation respectively instead of '0' when hosted Actor ptr is null #UE4 Note for programmers: this changes the default behavior of this edge case. You might want to go through your code and check if you're comparing UEnvQueryItemType_Actor::GetItem*'s results to 0. Change 3901733 by Mieszko.Zielinski Made FEnvQueryInstance::PrepareContext implementations returning vectors and rotators ignore InvalidLocation and InvalidRotation (respectively) #UE4 Change 3901925 by Ben.Zeigler #jira UE-55395 Fix issue where the cooker could load asset registry caches made in -game that do not have dependency data, leading to broken cooks Change 3902166 by Marc.Audy Make ULevel::GetWorld final Change 3902749 by Ben.Zeigler Fix it so pressing refresh button in asset audit window actually refreshes the asset management database Change 3902763 by Ben.Zeigler #jira UE-55407 Fix it so editor tutorials are not cooked unless referenced, by correctly marking soft object paths imported from editor project settings as editor-only Change 3905578 by Phillip.Kavan The UX to add a new parameter on a Blueprint delegate is now at parity with Blueprint functions. #4392 #jira UE-53779 Change 3905848 by Phillip.Kavan First pass of the experimental Blueprint graph bookmarks feature. #jira UE-10052 Change 3906025 by Phillip.Kavan CIS fix. Change 3906195 by Phillip.Kavan Add missing icon file. Change 3906356 by Phillip.Kavan Moved Blueprint bookmarks enable flag into EditorExperimentalSettings for consistency with other options. Change 3910628 by Ben.Zeigler Partial fix for UE-55363, this allows references to ObjectRedirectors to be switched from parent class to a child class on load as this should always be safe This does not actually fix UE-55363 because that case is changing from UMaterial to UMaterialInstanceConstant, and those are siblings instead of parent/child Change 3912470 by Ben.Zeigler #jira UE-55586 Fix issue with saving redirected soft object paths where the export sort could accidentally cause the parent CDO to get modified between name tagging and writing exports, which is unsafe because due to delta serialization it would try to write names that were not previously tagged Change 3913045 by Marc.Audy Fix issues where recursion in to child actors wasn't being handled correctly Change 3913398 by Fred.Kimberley Fixes a misspelled name for one of the classes in the ability system. PR #4430: Fixed spelling of FGameplayAbilityInputBinds. (Contributed by IntegralLee) #github #jira UE-54327 Change 3918016 by Fred.Kimberley Ensure AllocGameplayEffectContext is being used in all cases where FGameplayeEffectContext is being created. #jira UE-52668 PR #4250: Only create FGameplayEffectContext via AbilitySystemGlobals::.AllocGameplayEffectContext (Contributed by slonopotamus) #github Change 3924653 by Mieszko.Zielinski Fixed LoadEngineClass local to UnrealEngine.cpp to check class redirects before falling back to default class instance #UE4 #jira UE-55378 Change 3925614 by Phillip.Kavan Fix ForEachEnum node to skip over hidden enum values in new placements by default. Change summary: - Added FKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() as an internal-only Blueprint node support API. - Modified FForExpandNodeHelper::AllocateDefaultPins() to add a "Skip Hidden" input pin (advanced). Pin default value is false. - Added a UK2Node_ForEachElementInEnum::PostPlacedNewNode() override to set the default value of the "Skip Hidden" input pin to 'true' for all new node placements. - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include additional expansion logic based on the "Skip Hidden" input pin. For new placements (i.e. when the pin defaults to 'true'), an intermediate branch node will now be inserted into the compiled execution sequence to test for "hidden" metadata on the value before executing the loop body. If the input pin is linked, another intermediate branch will be inserted into the execution sequence prior to the "hidden" metadata test. All existing placements of the node will remain as-is after compilation (i.e. no additional intermediate branch nodes will be included in the expansion). #jira UE-34563 Change 3925649 by Marc.Audy Fix up issue post merge from Main with navigation system refactor Change 3926293 by Phillip.Kavan Temp fix to unblock CIS. #jira UE-34563 Change 3926523 by Marc.Audy Ensure that a renamed Actor is in the correct Actors array #jira UE-46718 Change 3928732 by Fred.Kimberley Unshelved from pending changelist '3793298': #jira UE-53136 PR #4287: virtual additions for AttributeSet extendability (Contributed by TWIDan) #github Change 3928780 by Marc.Audy PR #4309: The display names of the functions. (Contributed by SertacOgan) #jira UE-53334 Change 3929730 by Joseph.Wysosky Submitting test assets for the new Blueprint Structure test cases Change 3931919 by Joseph.Wysosky Deleting BasicStructure asset to rest MemberVariables back to default settings Change 3931922 by Joseph.Wysosky Adding BasicStructure test asset back with default members Change 3932083 by Phillip.Kavan Fix Compositing plugin source files to conform to updated relative include path specifications. - Encountered while testing Blueprint nativization of assets with dependencies on Composure/LensDistortion APIs. Change 3932196 by Dan.Oconnor Resetting a property to default now uses the same codepath as assigning the value from the slate control #jira UE-55909 Change 3932408 by Lukasz.Furman fixed behavior tree services attached to task nodes being sometimes recognized as root level #jira nope Change 3932808 by Marc.Audy PR #4083: Change to UK2Node_BaseAsyncTask to have pin tooltips on latent nodes (Contributed by dwrpayne) #jira UE-50871 Change 3934101 by Phillip.Kavan Revise ForEachEnum node expansion logic to exclude hidden values at compile time. Change summary: - Removed UKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() (no longer in use). - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include an enum switch node in the expansion, which will exclude hidden values when constructed. The additional expansion will occur if the enum type contains at least one hidden value. #jira UE-34563 Change 3934106 by Phillip.Kavan Mirrored 4.19 fixes to allow for EngineTest iteration w/ nativization enabled. Change summary: - Mirrored CLs 3876918, 3878968, 3883257, 3885566, 3912161 and 3920519. Change 3934116 by Phillip.Kavan UBT: Explicitly define the DEPRECATED_FORGAME macro only for non-engine modules. Change summary: - Modified UEBuildModule.SetupPrivateCompileEnvironment() to check the 'bTreatAsEngineModule' flag from the rules assembly rather than testing the module's build type. Change 3934382 by Phillip.Kavan Avoid inclusion of monolothic engine header files in nativized Blueprint codegen. Change 3936387 by Mieszko.Zielinski Added a flag to NavModifierComponent to control whether agent's height is being used while expadning modifier's bounds during navmesh generation #UE4 Change 3936905 by Ben.Marsh Disable IncludeTool warning for DEPRECATED_FORGAME macro; we expect this to be different for game modules. Change 3940537 by Marc.Audy Don't allow maps, sets, or arrays with an actor inner type in user defined structs to select an actor from the currently open level as default value. #jira UE-55938 Change 3940901 by Marc.Audy Properly name CVar global to reflect what it is for Change 3943043 by Marc.Audy Fix world context functions not being able to be used in CheatManager derived blueprints #jira UE-55787 Change 3943075 by Mieszko.Zielinski Moved path-following related delegats' interface from NavigationSystemBase over to a new IPathFollowingManagerInterface #UE4 Change 3943089 by Mieszko.Zielinski Fixed how WorldSettings.NavigationSystemConfig gets created #UE4 Made it so that there's always a NavigationSystemConfig instance present, but added a 'Null' config - this was required due to issues with creation/serialization of instanced subobjects. The change required adding copying constructors to FNavAgentProperties and FNavDataConfig. Also, fixed FNavAgentProperties.IsEquivalent to be symetrical. Change 3943225 by Marc.Audy Fix spelling of Implements Change 3950813 by Marc.Audy Include owner in attachment mismatch ensure #jira UE-56148 Change 3950996 by Marc.Audy Fix cases where bit packed properties used the entire byte not just the bit when interacting with boolean arrays #jira UE-55482 Change 3952086 by Marc.Audy PR #4483: Add Missing Radial Damage Multicast Delegate (Contributed by error454) #jira UE-54974 Change 3952720 by Marc.Audy PR #4575: Check if *Pawn* is a null Pointer (Contributed by dani9bma) #jira UE-56248 Change 3952804 by Richard.Hinckley Changes to BP API export commandlet to support better plugin exporting. Contributed by Harry Wang of Google. Change 3952962 by Marc.Audy UHT now validates that ExpandEnumAsExecs references a valid parameter to the function. #jira UE-49610 Change 3952977 by Phillip.Kavan Fix EDL cycle at load time in nativized cooked builds when a circular dependency exists between converted and unconverted assets. Change summary: - Added FGatherConvertedClassDependencies::MarkUnconvertedClassAsNecessary(). - Modified FFindAssetsToInclude::MaybeIncludeObjectAsDependency() to mark unconverted BPGCs (e.g. DOBPs) as necessary for conversion when the potential for a circular dependency exists so that we generate stub wrappers rather than depend on them directly. - Fixed a few typos in existing API names. #jira UE-48233 Change 3953658 by Marc.Audy (4.19.1) Fix inserting a reroute node causing connections to break on a GetClassDefaults node #jira UE-56270 Change 3954727 by Marc.Audy Add friendly name to custom version mismatch message Change 3954906 by Marc.Audy (4.19.1) Fix crash when undoing changes related to reroute nodes connected to a GetClassDefaults node #jira UE-56313 Change 3954997 by Marc.Audy Ensure and return null if GetOuter<WithinClass> is called on a CDO for uclasses declared as within another so we don't get a UPackage c-style cast to the expected outer type Change 3955091 by Marc.Audy Do not register subcomponents that are not auto register #jira UE-52878 Change 3955943 by Marc.Audy Make AbilitySystemComponent pass parameters by const& instead of ref as no state is being changed Change 3956185 by Zak.Middleton #ue4 - Fix Characters using scoped movement updates (the default) not visually rotating when rotated at small rates at high framerate. This was caused by FScopedMovementUpdate::IsTransformDirty() using a larger FTransform comparison tolerance than USceneComponent::UpdateComponentToWorldWithParent(). #jira none Change 3958102 by Marc.Audy Clean out dead code path from k2node_select Select node now resets pins to wildcard if none of the pins are in use Change 3958113 by Lukasz.Furman added OnSearchStart call to root level behavior tree services #jira UE-56257 Change 3958361 by Marc.Audy Fix literal input pins on select being set to wildcard during compilation Change 3961148 by Dan.Oconnor Mirror 3961139 from Release 4.19 Fix for placeholder objects being left behind when loading certain UMG assets - this could causea crash when loading UMG assets #jira UE-55742 Change 3961640 by Marc.Audy Select node now displays Add Pin button Undo of changing select node index type now works correctly. Connections to option pins now maintained across change of index pin type #jira UE-20742 Change 3962262 by Marc.Audy Display "Object Reference" instead of "Object Object Reference" and "Soft Object Reference" instead of "Object Soft Object Reference" Change 3962795 by Phillip.Kavan Fix for a crash when cooking with Blueprint nativization enabled after encountering a nested instanced editor-only default subobject inherited from a native C++ base class. - Mirrored from //UE4/Release-4.19 (3962782) #jira UE-56316 Change 3962991 by Marc.Audy Modify Negate/Increment/Decrement Int/Float so that the output is always the desired result even if a non-mutable pin is passed in. Note that this can mean the result being returned and the value of the pin passed in if queried again will not be the same (in the case of pure nodes). #jira UE-54807 Change 3963114 by Marc.Audy Fix ensures/crash as a result of UClass expecting to be able to access the UPackage of CDOs via the GetOuterUPackage call. Change 3963427 by Marc.Audy Fix initialization order Initialize bUseBackwardsCompatForEmptyAutogeneratedValue Change 3963781 by Marc.Audy Fix without editor compiles Change 3964576 by Marc.Audy PR #4599: : Working category for timelines (Contributed by projectgheist) #jira UE-56460 #jira UE-26053 Change 3964782 by Dan.Oconnor Mirror 3964772 from Release 4.19 Fix crash when force deleting certain blueprints, we can only check for authoritativeness while reinstancing #jira UE-56447 Change 3965156 by Mieszko.Zielinski PR #4592: Visual Logger optimization to fix rapid FPS drop when many items are hidden (Contributed by tstaples) #jira UE-56435 Change 3965173 by Marc.Audy (4.19.1) Fix incorrectly switching a cooling down tick to be an enabled tick when marking it enabled. #jira UE-56431 Change 3966117 by Marc.Audy Fix select nodes inside macros using wildcard array inputs having issues resolving type. #jira UE-56484 Change 3878901 by Mieszko.Zielinski NavigationSystem's code refactored out of the engine and into a new separate module #UE4 The CL contains required changes to all of our internal projects. Fortnite and Paragon have been tested, while the rest have been only compiled. Change 3879409 by Mieszko.Zielinski Further fallout fixes after ripping out NavigationSystem out of the engine #UE4 - Fixed bad ini redirects (had NavigationSystem.NavigationSystem instead of NavigationSystem.NavigationSystemV1) - Added missing FNavigationSystem::GetDefaultNavDataClass binding (resulting in QAGame's func tests failing) Change 3897655 by Ben.Zeigler #jira UE-55211 Fix it so literal soft object pins on blueprint nodes get correctly cooked/referenced It now sets the thread context to skip internal serialize and calls the archive's serialize function instead of bypassing it, which allows it to pick up references Change 3962780 by Marc.Audy When preventing a split pin from being orphaned, all sub pins must also be prevented. #jira UE-56328 Repack members of UEdGraphPin to avoid wasted space (saves 16bytes) [CL 3967553 by Marc Audy in Main branch]
2018-03-27 14:27:07 -04:00
namespace
{
UNavCollisionBase* CreateNewNavCollisionInstance(UObject& Outer)
{
return NewObject<UNavCollision>(&Outer);
}
}
//----------------------------------------------------------------------//
// UNavCollision
//----------------------------------------------------------------------//
UNavCollision::UNavCollision(const FObjectInitializer& ObjectInitializer) : Super(ObjectInitializer)
{
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
bGatherConvexGeometry = true;
bHasConvexGeometry = false;
bForceGeometryRebuild = false;
bCreateOnClient = true;
}
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3967517) #rb none #lockdown Nick.Penwarden #rnx ============================ MAJOR FEATURES & CHANGES ============================ Change 3804281 by Fred.Kimberley Improve contrast on watches in blueprints. Change 3804322 by Fred.Kimberley First pass at adding a watch window for blueprint debugging. Change 3804737 by mason.seay Added some Descriptions to tests that didn't have any, and fixed some typos Change 3806103 by mason.seay Moved and Renamed Timers test map and content appropriately Change 3806164 by Fred.Kimberley Add missing property types to GetDebugInfoInternal. #jira UE-53355 Change 3806617 by Dan.Oconnor Function Terminator (and derived types) now use FMemberReference instead of a UClass/FName pair. This fixes various bugs when resolving the UFunction referenced by the function terminator #jira UE-31754, UE-42431, UE-53315, UE-53172 Change 3808541 by Fred.Kimberley Add support for redirecting user defined enums. This is in response to the following UDN thread: https://udn.unrealengine.com/questions/404141/is-is-possible-to-create-a-redirector-from-a-bluep.html Change 3808565 by mason.seay Added a few more struct tests Change 3809840 by mason.seay Renamed CharacterMovement.umap to CharacterCollision. Fixed up content to reflect this change. Change 3809847 by mason.seay Added Object Timer tests. Fixed up existing timer test to remove delay dependency Change 3811704 by Ben.Zeigler Fix issue where identical enum redirects registered to different initial names would throw an incorrect error, it's fine if the value change maps are identical Change 3811946 by Ben.Zeigler #jira UE-53511 Fix it so it is possible to set a user defined struct value back to it's default. The UDS hack in PropertyValueToString is no longer needed, but this could affect some other user struct editor operations Change 3812061 by Dan.Oconnor Stepping over or in to nodes that are expanded at compile time (e.g. event nodes, spawn actor nodes) no longer requires multiple 'steps' #jira UE-52854 Change 3812259 by Dan.Oconnor Fix asset broken by removal of an unkown enum #jira UE-51419 Change 3812904 by Ben.Zeigler Make ResolveRedirects on StreamableManager public as it can be used to validate things Change 3812958 by Ben.Zeigler #jira UE-52977 Fix crashes when binding blueprint editor commands to keys and using from invalid contexts Change 3812975 by Mieszko.Zielinski Added contraptions to catch a rare eidtor-time EQS crash #UE4 #jira UE-53468 Change 3818530 by Phillip.Kavan Fix incorrect access to nested instanced subobjects in nativized Blueprint ctor codegen. Change summary: - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to properly reference the outer and check ptr validity when creating/obtaining nested default subobjects. - Modified FEmitDefaultValueHelper::HandleClassSubobject() to better guard against code generation based on an invalid local variable name. #jira UE-52167 Change 3819733 by Mieszko.Zielinski Marked UAISenseConfig_Blueprint and UAISense_Blueprint as hidedropdown #UE4 #jira UE-15089 Change 3821776 by Marc.Audy Remove redundent code in SpawnActorFromClass that already exists in ConstructObjectFromClass parent class Change 3823851 by mason.seay Moved and renamed blueprints used for Object Reference testing Change 3824165 by Phillip.Kavan Ensure that subobject class types are constructed prior to accessing a subobject CDO in a nativized Blueprint class's generated ctor at runtime. Change summary: - Modified FFakeImportTableHelper to tag subobject class types as a preload dependency of the outer converted Blueprint class type and not of the CDO. #jira UE-53111 Change 3830309 by mason.seay Created Literal Gameplay Tag Container test Change 3830562 by Phillip.Kavan Blueprint nativization bug fixes (reviewed/taken from PR). Change summary: - Modified FSafeContextScopedEmitter::ValidationChain() to ensure that generated code calls the global IsValid() utility function on objects. - Modified FBlueprintCompilerCppBackend::EmitCreateArrayStatement() to generate a proper cast on MakeArray node inputs for enum class types. - Modified FBlueprintCompilerCppBackend::EnimCallStatementInner() to more correctly identify an interface function call site. - Modified FEmitHelper::GenerateAutomaticCast() to properly handle automatic casts of enum arrays. - (Modified from PR source) Added new FComponentDataUtils statics to consolidate custom init code generation for converted special-case component types (e.g. BodyInstance). Ties native component DSOs to the same pre/post as converted non-native component templates around the OuterGenerate() loop. - Modified FExposeOnSpawnValidator::IsSupported() to include CPT_SoftObjectReference property types. - Modified UBlueprintGeneratedClass::CheckAndApplyComponentTemplateOverrides() to no longer break out of the loop before finding additional ICH override record matches. #4202 #jira UE-52188 Change 3830579 by Fred.Kimberley Add support for turning off multiple watches at once in the watch window. #jira UE-53852 Change 3836047 by Zak.Middleton #ue4 - Dev test maps for overlaps perf tests. Change 3836768 by Phillip.Kavan Fix for a build failure that could occur with Blueprint nativization enabled and EDL disabled. This was a regression introduced in 4.18. Change summary: - Modified FEmitDefaultValueHelper::AddStaticFunctionsForDependencies() to emit the correct signature for constructing FBlueprintDependencyData elements when the EDL boot time optimization is disabled. #jira UE-53908 Change 3838085 by mason.seay Functional tests around basic blueprint functions Change 3840489 by Ben.Zeigler #jira UE-31662 Fix regression with renaming parent inherited function. It was not correctly searching the parent's skeleton class during the child's recompile so it was erroneously detecting the parent function as missing Change 3840648 by mason.seay Updated Descriptions on tests Change 3842914 by Ben.Zeigler Improve comments around stremable handle cancel/release Change 3850413 by Ben.Zeigler Fix asset registry memory reporting, track some newer fields and correctly report the state size instead of static size twice Copy of CL #3849610 Change 3850426 by Ben.Zeigler Reduce asset registry memory in cooked build by stripping out searchable names and empty dependency nodes by default Add option to strip dependency data for asset data with no tags, this was always true before but isn't necessarily safe Copy of CL #3850389 Change 3853449 by Phillip.Kavan Fix a scoping issue for local instanced subobject references in nativized Blueprint C++ code. Also, don't emit redundant assignment statements for instanced subobject reference properties. Change summary: - Consolidated FComponentDataUtils into FDefaultSubobjectData and extended FNonativeComponentData from it in order to handle both native & non-native DSO initialization codegen through a more common interface. - Exposed FEmitDefaultValueHelper::HandleInstancedSubobject() as a public API and added a 'SubobjectData' parameter to allow initialization codegen to be deferred until after all default subobjects have been mapped to local variables within the current scope. - Modified FEmitDefaultValueHelper::GenerateConstructor() to first map all default subobjects to local variables and then emit any delta initialization code for property values. - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to return an empty string for an instanced reference to a default subobject. This allows us to avoid emitting initialization statements to unnecessarily reassign instances back to the same property. - Modified FEmitDefaultValueHelper::InnerGenerate() to better handle instanced references to default subobjects, ensuring that we don't emit unnecessary assignment statements and array initialization code to the converted class constructor in C++. - Fixed a few typos. #jira UE-53960 Change 3853465 by Phillip.Kavan Fix plugin module C++ source template to conform to recent public include path changes. Change 3857599 by Marc.Audy PR #4438: UE-54281: Make None a valid default value to select (Contributed by projectgheist) #jira UE-54281 #jira UE-54399 Change 3863259 by Zak.Middleton #ue4 - Save bandwidth for replicated characters by only replicating 4 byte timestamp value to clients if it's actually needed for Linear smoothing. Added option to always replicate the timestamp ("bNetworkAlwaysReplicateTransformUpdateTimestamp", default off), in case users still want this timestamp for some reason, or if smoothing mode changes dynamically and the server won't know. #jira UE-46293 Change 3863491 by Zak.Middleton #ue4 - Reduce network RPC overhead for players that are not moving. Added ClientNetSendMoveDeltaTimeStationary (default 12Hz) to supplement existing ClientNetSendMoveDeltaTime and ClientNetSendMoveDeltaTimeThrottled. UCharacterMovementComponent::GetClientNetSendDeltaTime() now uses this time if Acceleration and Velocity are zero, and the control rotation matches the last ack'd control rotation from the server. Also fixed up code default for ClientNetSendMoveDeltaTime to match default INI value. #jira UE-21264 Change 3865325 by Zak.Middleton #ue4 - Fix static analysis warning about possible null PC pointer. #jira none Change 3869828 by Ben.Zeigler #jira UE-54786 Fix it so -cookonthefly cooperates with -iterate by writing out a development asset registry Change 3869969 by mason.seay Character Movement Functional Tests Change 3870099 by Mason.Seay Submitted asset deletes Change 3870105 by mason.seay Removed link to anim blueprint to fix errors Change 3870238 by mason.seay Test map for Async Loading in a Loop Change 3870479 by Ben.Zeigler Add code to check CoreRedirects for SoftObjectPaths when saving or resolving in the editor. This is a bit slow so we don't want to do it on load We don't have any good way to know the type of a path so I check both Object and Class redirectors, which will also pickup Module renames Change 3875224 by mason.seay Functional tests for Event BeginPlay execution order Change 3875409 by mason.seay Optimized and fixed up character movement tests (because a potential bug in FunctionalTestActor is always passing a test when it can fail) Change 3878947 by Mieszko.Zielinski CIS fixes #UE4 Change 3879000 by Mieszko.Zielinski More CIS fixes #UE4 Change 3879139 by Mieszko.Zielinski Even moar CIS fixes #UE4 Change 3879742 by mason.seay Added animation to Nativization Widget asset Change 3880198 by Zak.Middleton #ue4 - CanCrouchInCurrentState() returns false when character capsule is simulating physics. #jira UE-54875 github #4479 Change 3880266 by Zak.Middleton #ue4 - Optimize UpdateCharacterStateBeforeMovement() to do cheaper tests earlier (avoid CanCrouchInCurrentState() unless necessary, now that it tests IsSimulatingPhysics() which is not trivial). #jira UE-54875 Change 3881546 by Mieszko.Zielinski *.Build.cs files clean up - removed redundant dependencies from NavigationSystem and AIModule #UE4 Change 3881547 by Mieszko.Zielinski Removed a bunch of DEPRECATED functions from the new NavigationSystem module #UE4 Removed all deprecates prior 4.15 (picked this one because I do know some licencees are still using it). Change 3881742 by mason.seay Additional crouch test to cover UE-54875 Change 3881794 by Mieszko.Zielinski Fixed a bug in FVisualLoggerHelpers::GetCategories resulting in losing verbosity information #UE4 Change 3884503 by Mieszko.Zielinski Fixed TopDown code template to make it compile after navsys refactor #UE4 #jira UE-55039 Change 3884507 by Mieszko.Zielinski Switched ensures in UNavigationSystemV1:SimpleMoveToX to error-level logs #UE4 It's an error rather than a warning because the functions no longer do anything. Making it work would require a cyclic dependency between NavigationSystem and AIModule. #jira UE-55033 Change 3884594 by Mieszko.Zielinski Added a const FNavigationSystem::GetCurrent version #UE4 lack of it was causing KiteDemo to not compile. Change 3884602 by Mieszko.Zielinski Mac editor compilation fix #UE4 Change 3884615 by Mieszko.Zielinski Fixed FAIDataProviderValue::GetRawValuePtr not being accessible from outside of AIModule #UE4 Change 3885254 by Mieszko.Zielinski Guessfix for UE-55030 #UE4 The name of NavigationSystem module was put in wrong in the IMPLEMENT_MODULE macro #jira 55030 Change 3885286 by Mieszko.Zielinski Changed how NavigationSystem module includes DerivedDataCache module #UE4 #jira UE-55035 Change 3885492 by mason.seay Minor tweaks to animation Change 3885773 by mason.seay Resaving assets to clear out warning Change 3886433 by Mieszko.Zielinski Fixed TP_TopDownBP's player controller BP to not use deprecated nav functions #UE4 #jira UE-55108 Change 3886783 by Mieszko.Zielinski Removed silly inclusion of NavigationSystemTypes.h from NavigationSystemTypes.h #UE4 Change 3887019 by Mieszko.Zielinski Fixed accessing unchecked pointer in ANavigationData::OnNavAreaAdded #UE4 Change 3891031 by Mieszko.Zielinski Fixed missing includes in NavigationSystem.cpp #UE4 Change 3891037 by Mieszko.Zielinski ContentEample's navigation fix #UE4 #jira UE-55109 Change 3891044 by Mieszko.Zielinski PR #4456: Fix bug in UAISense_Sight::OnListenerForgetsActor (Contributed by maxtunel) #UE4 Change 3891598 by mason.seay Resaving assets to clear out "empty engine version" spam Change 3891612 by mason.seay Fixed deprecated Set Text warnings Change 3893334 by Mieszko.Zielinski Fixed a bug in navmesh generation resulting in not removing layers that ended up empty after rebuilding #UE4 #jira UE-55041 Change 3893394 by Mieszko.Zielinski Fixed navmesh debug drawing to properly display octree elements with "per instance transforms" (like instanced SMs) #UE4 Also, added a more detailed debug drawing of navoctree contents (optional, but on by default). Change 3893395 by Mieszko.Zielinski Added a bit of code to navigation system's initialization that checks the enegine ini for sections refering to the moved navigation classes, and complain about it #UE4 The message is printed as an error-level log line and it says what should the offending section be renamed to. Change 3895563 by Dan.Oconnor Mirror 3895535 Append history from previous branches in source control history view #jira none Change 3896930 by Mieszko.Zielinski Added an option to tick navigation system while the game is paused #UE4 Controlled via NavigationSystemV1.bTickWhilePaused, ini- and ProjectSettings-configurable. #jira UE-39275 Change 3897554 by Mieszko.Zielinski Unified how NavMeshRenderingComponent draws navmesh and octree collision's polys #UE4 Change 3897556 by Mieszko.Zielinski Fixed what kind of nav tile bounds we're sending to nav-colliding elements when calling 'per-instance transform' delegate #UE4 #jira UE-45261 Change 3898064 by Mieszko.Zielinski Made SM Editor display AI-navigation-related whenever bHasNavigationData is set to true #UE4 #jira UE-50436 Change 3899004 by Mieszko.Zielinski Fixed UEnvQueryItemType_Actor::GetItemLocation and UEnvQueryItemType_Actor::GetItemRotation to return FAISystem::InvalidLocation and FAISystem::InvalidRotation respectively instead of '0' when hosted Actor ptr is null #UE4 Note for programmers: this changes the default behavior of this edge case. You might want to go through your code and check if you're comparing UEnvQueryItemType_Actor::GetItem*'s results to 0. Change 3901733 by Mieszko.Zielinski Made FEnvQueryInstance::PrepareContext implementations returning vectors and rotators ignore InvalidLocation and InvalidRotation (respectively) #UE4 Change 3901925 by Ben.Zeigler #jira UE-55395 Fix issue where the cooker could load asset registry caches made in -game that do not have dependency data, leading to broken cooks Change 3902166 by Marc.Audy Make ULevel::GetWorld final Change 3902749 by Ben.Zeigler Fix it so pressing refresh button in asset audit window actually refreshes the asset management database Change 3902763 by Ben.Zeigler #jira UE-55407 Fix it so editor tutorials are not cooked unless referenced, by correctly marking soft object paths imported from editor project settings as editor-only Change 3905578 by Phillip.Kavan The UX to add a new parameter on a Blueprint delegate is now at parity with Blueprint functions. #4392 #jira UE-53779 Change 3905848 by Phillip.Kavan First pass of the experimental Blueprint graph bookmarks feature. #jira UE-10052 Change 3906025 by Phillip.Kavan CIS fix. Change 3906195 by Phillip.Kavan Add missing icon file. Change 3906356 by Phillip.Kavan Moved Blueprint bookmarks enable flag into EditorExperimentalSettings for consistency with other options. Change 3910628 by Ben.Zeigler Partial fix for UE-55363, this allows references to ObjectRedirectors to be switched from parent class to a child class on load as this should always be safe This does not actually fix UE-55363 because that case is changing from UMaterial to UMaterialInstanceConstant, and those are siblings instead of parent/child Change 3912470 by Ben.Zeigler #jira UE-55586 Fix issue with saving redirected soft object paths where the export sort could accidentally cause the parent CDO to get modified between name tagging and writing exports, which is unsafe because due to delta serialization it would try to write names that were not previously tagged Change 3913045 by Marc.Audy Fix issues where recursion in to child actors wasn't being handled correctly Change 3913398 by Fred.Kimberley Fixes a misspelled name for one of the classes in the ability system. PR #4430: Fixed spelling of FGameplayAbilityInputBinds. (Contributed by IntegralLee) #github #jira UE-54327 Change 3918016 by Fred.Kimberley Ensure AllocGameplayEffectContext is being used in all cases where FGameplayeEffectContext is being created. #jira UE-52668 PR #4250: Only create FGameplayEffectContext via AbilitySystemGlobals::.AllocGameplayEffectContext (Contributed by slonopotamus) #github Change 3924653 by Mieszko.Zielinski Fixed LoadEngineClass local to UnrealEngine.cpp to check class redirects before falling back to default class instance #UE4 #jira UE-55378 Change 3925614 by Phillip.Kavan Fix ForEachEnum node to skip over hidden enum values in new placements by default. Change summary: - Added FKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() as an internal-only Blueprint node support API. - Modified FForExpandNodeHelper::AllocateDefaultPins() to add a "Skip Hidden" input pin (advanced). Pin default value is false. - Added a UK2Node_ForEachElementInEnum::PostPlacedNewNode() override to set the default value of the "Skip Hidden" input pin to 'true' for all new node placements. - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include additional expansion logic based on the "Skip Hidden" input pin. For new placements (i.e. when the pin defaults to 'true'), an intermediate branch node will now be inserted into the compiled execution sequence to test for "hidden" metadata on the value before executing the loop body. If the input pin is linked, another intermediate branch will be inserted into the execution sequence prior to the "hidden" metadata test. All existing placements of the node will remain as-is after compilation (i.e. no additional intermediate branch nodes will be included in the expansion). #jira UE-34563 Change 3925649 by Marc.Audy Fix up issue post merge from Main with navigation system refactor Change 3926293 by Phillip.Kavan Temp fix to unblock CIS. #jira UE-34563 Change 3926523 by Marc.Audy Ensure that a renamed Actor is in the correct Actors array #jira UE-46718 Change 3928732 by Fred.Kimberley Unshelved from pending changelist '3793298': #jira UE-53136 PR #4287: virtual additions for AttributeSet extendability (Contributed by TWIDan) #github Change 3928780 by Marc.Audy PR #4309: The display names of the functions. (Contributed by SertacOgan) #jira UE-53334 Change 3929730 by Joseph.Wysosky Submitting test assets for the new Blueprint Structure test cases Change 3931919 by Joseph.Wysosky Deleting BasicStructure asset to rest MemberVariables back to default settings Change 3931922 by Joseph.Wysosky Adding BasicStructure test asset back with default members Change 3932083 by Phillip.Kavan Fix Compositing plugin source files to conform to updated relative include path specifications. - Encountered while testing Blueprint nativization of assets with dependencies on Composure/LensDistortion APIs. Change 3932196 by Dan.Oconnor Resetting a property to default now uses the same codepath as assigning the value from the slate control #jira UE-55909 Change 3932408 by Lukasz.Furman fixed behavior tree services attached to task nodes being sometimes recognized as root level #jira nope Change 3932808 by Marc.Audy PR #4083: Change to UK2Node_BaseAsyncTask to have pin tooltips on latent nodes (Contributed by dwrpayne) #jira UE-50871 Change 3934101 by Phillip.Kavan Revise ForEachEnum node expansion logic to exclude hidden values at compile time. Change summary: - Removed UKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() (no longer in use). - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include an enum switch node in the expansion, which will exclude hidden values when constructed. The additional expansion will occur if the enum type contains at least one hidden value. #jira UE-34563 Change 3934106 by Phillip.Kavan Mirrored 4.19 fixes to allow for EngineTest iteration w/ nativization enabled. Change summary: - Mirrored CLs 3876918, 3878968, 3883257, 3885566, 3912161 and 3920519. Change 3934116 by Phillip.Kavan UBT: Explicitly define the DEPRECATED_FORGAME macro only for non-engine modules. Change summary: - Modified UEBuildModule.SetupPrivateCompileEnvironment() to check the 'bTreatAsEngineModule' flag from the rules assembly rather than testing the module's build type. Change 3934382 by Phillip.Kavan Avoid inclusion of monolothic engine header files in nativized Blueprint codegen. Change 3936387 by Mieszko.Zielinski Added a flag to NavModifierComponent to control whether agent's height is being used while expadning modifier's bounds during navmesh generation #UE4 Change 3936905 by Ben.Marsh Disable IncludeTool warning for DEPRECATED_FORGAME macro; we expect this to be different for game modules. Change 3940537 by Marc.Audy Don't allow maps, sets, or arrays with an actor inner type in user defined structs to select an actor from the currently open level as default value. #jira UE-55938 Change 3940901 by Marc.Audy Properly name CVar global to reflect what it is for Change 3943043 by Marc.Audy Fix world context functions not being able to be used in CheatManager derived blueprints #jira UE-55787 Change 3943075 by Mieszko.Zielinski Moved path-following related delegats' interface from NavigationSystemBase over to a new IPathFollowingManagerInterface #UE4 Change 3943089 by Mieszko.Zielinski Fixed how WorldSettings.NavigationSystemConfig gets created #UE4 Made it so that there's always a NavigationSystemConfig instance present, but added a 'Null' config - this was required due to issues with creation/serialization of instanced subobjects. The change required adding copying constructors to FNavAgentProperties and FNavDataConfig. Also, fixed FNavAgentProperties.IsEquivalent to be symetrical. Change 3943225 by Marc.Audy Fix spelling of Implements Change 3950813 by Marc.Audy Include owner in attachment mismatch ensure #jira UE-56148 Change 3950996 by Marc.Audy Fix cases where bit packed properties used the entire byte not just the bit when interacting with boolean arrays #jira UE-55482 Change 3952086 by Marc.Audy PR #4483: Add Missing Radial Damage Multicast Delegate (Contributed by error454) #jira UE-54974 Change 3952720 by Marc.Audy PR #4575: Check if *Pawn* is a null Pointer (Contributed by dani9bma) #jira UE-56248 Change 3952804 by Richard.Hinckley Changes to BP API export commandlet to support better plugin exporting. Contributed by Harry Wang of Google. Change 3952962 by Marc.Audy UHT now validates that ExpandEnumAsExecs references a valid parameter to the function. #jira UE-49610 Change 3952977 by Phillip.Kavan Fix EDL cycle at load time in nativized cooked builds when a circular dependency exists between converted and unconverted assets. Change summary: - Added FGatherConvertedClassDependencies::MarkUnconvertedClassAsNecessary(). - Modified FFindAssetsToInclude::MaybeIncludeObjectAsDependency() to mark unconverted BPGCs (e.g. DOBPs) as necessary for conversion when the potential for a circular dependency exists so that we generate stub wrappers rather than depend on them directly. - Fixed a few typos in existing API names. #jira UE-48233 Change 3953658 by Marc.Audy (4.19.1) Fix inserting a reroute node causing connections to break on a GetClassDefaults node #jira UE-56270 Change 3954727 by Marc.Audy Add friendly name to custom version mismatch message Change 3954906 by Marc.Audy (4.19.1) Fix crash when undoing changes related to reroute nodes connected to a GetClassDefaults node #jira UE-56313 Change 3954997 by Marc.Audy Ensure and return null if GetOuter<WithinClass> is called on a CDO for uclasses declared as within another so we don't get a UPackage c-style cast to the expected outer type Change 3955091 by Marc.Audy Do not register subcomponents that are not auto register #jira UE-52878 Change 3955943 by Marc.Audy Make AbilitySystemComponent pass parameters by const& instead of ref as no state is being changed Change 3956185 by Zak.Middleton #ue4 - Fix Characters using scoped movement updates (the default) not visually rotating when rotated at small rates at high framerate. This was caused by FScopedMovementUpdate::IsTransformDirty() using a larger FTransform comparison tolerance than USceneComponent::UpdateComponentToWorldWithParent(). #jira none Change 3958102 by Marc.Audy Clean out dead code path from k2node_select Select node now resets pins to wildcard if none of the pins are in use Change 3958113 by Lukasz.Furman added OnSearchStart call to root level behavior tree services #jira UE-56257 Change 3958361 by Marc.Audy Fix literal input pins on select being set to wildcard during compilation Change 3961148 by Dan.Oconnor Mirror 3961139 from Release 4.19 Fix for placeholder objects being left behind when loading certain UMG assets - this could causea crash when loading UMG assets #jira UE-55742 Change 3961640 by Marc.Audy Select node now displays Add Pin button Undo of changing select node index type now works correctly. Connections to option pins now maintained across change of index pin type #jira UE-20742 Change 3962262 by Marc.Audy Display "Object Reference" instead of "Object Object Reference" and "Soft Object Reference" instead of "Object Soft Object Reference" Change 3962795 by Phillip.Kavan Fix for a crash when cooking with Blueprint nativization enabled after encountering a nested instanced editor-only default subobject inherited from a native C++ base class. - Mirrored from //UE4/Release-4.19 (3962782) #jira UE-56316 Change 3962991 by Marc.Audy Modify Negate/Increment/Decrement Int/Float so that the output is always the desired result even if a non-mutable pin is passed in. Note that this can mean the result being returned and the value of the pin passed in if queried again will not be the same (in the case of pure nodes). #jira UE-54807 Change 3963114 by Marc.Audy Fix ensures/crash as a result of UClass expecting to be able to access the UPackage of CDOs via the GetOuterUPackage call. Change 3963427 by Marc.Audy Fix initialization order Initialize bUseBackwardsCompatForEmptyAutogeneratedValue Change 3963781 by Marc.Audy Fix without editor compiles Change 3964576 by Marc.Audy PR #4599: : Working category for timelines (Contributed by projectgheist) #jira UE-56460 #jira UE-26053 Change 3964782 by Dan.Oconnor Mirror 3964772 from Release 4.19 Fix crash when force deleting certain blueprints, we can only check for authoritativeness while reinstancing #jira UE-56447 Change 3965156 by Mieszko.Zielinski PR #4592: Visual Logger optimization to fix rapid FPS drop when many items are hidden (Contributed by tstaples) #jira UE-56435 Change 3965173 by Marc.Audy (4.19.1) Fix incorrectly switching a cooling down tick to be an enabled tick when marking it enabled. #jira UE-56431 Change 3966117 by Marc.Audy Fix select nodes inside macros using wildcard array inputs having issues resolving type. #jira UE-56484 Change 3878901 by Mieszko.Zielinski NavigationSystem's code refactored out of the engine and into a new separate module #UE4 The CL contains required changes to all of our internal projects. Fortnite and Paragon have been tested, while the rest have been only compiled. Change 3879409 by Mieszko.Zielinski Further fallout fixes after ripping out NavigationSystem out of the engine #UE4 - Fixed bad ini redirects (had NavigationSystem.NavigationSystem instead of NavigationSystem.NavigationSystemV1) - Added missing FNavigationSystem::GetDefaultNavDataClass binding (resulting in QAGame's func tests failing) Change 3897655 by Ben.Zeigler #jira UE-55211 Fix it so literal soft object pins on blueprint nodes get correctly cooked/referenced It now sets the thread context to skip internal serialize and calls the archive's serialize function instead of bypassing it, which allows it to pick up references Change 3962780 by Marc.Audy When preventing a split pin from being orphaned, all sub pins must also be prevented. #jira UE-56328 Repack members of UEdGraphPin to avoid wasted space (saves 16bytes) [CL 3967553 by Marc Audy in Main branch]
2018-03-27 14:27:07 -04:00
void UNavCollision::PostInitProperties()
{
Super::PostInitProperties();
// if bCreateOnClient is false we're not even going to bind the delegate
if (HasAnyFlags(RF_ClassDefaultObject)
&& (GIsServer || bCreateOnClient
#if WITH_EDITOR
|| GIsEditor
#endif
)
)
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3967517) #rb none #lockdown Nick.Penwarden #rnx ============================ MAJOR FEATURES & CHANGES ============================ Change 3804281 by Fred.Kimberley Improve contrast on watches in blueprints. Change 3804322 by Fred.Kimberley First pass at adding a watch window for blueprint debugging. Change 3804737 by mason.seay Added some Descriptions to tests that didn't have any, and fixed some typos Change 3806103 by mason.seay Moved and Renamed Timers test map and content appropriately Change 3806164 by Fred.Kimberley Add missing property types to GetDebugInfoInternal. #jira UE-53355 Change 3806617 by Dan.Oconnor Function Terminator (and derived types) now use FMemberReference instead of a UClass/FName pair. This fixes various bugs when resolving the UFunction referenced by the function terminator #jira UE-31754, UE-42431, UE-53315, UE-53172 Change 3808541 by Fred.Kimberley Add support for redirecting user defined enums. This is in response to the following UDN thread: https://udn.unrealengine.com/questions/404141/is-is-possible-to-create-a-redirector-from-a-bluep.html Change 3808565 by mason.seay Added a few more struct tests Change 3809840 by mason.seay Renamed CharacterMovement.umap to CharacterCollision. Fixed up content to reflect this change. Change 3809847 by mason.seay Added Object Timer tests. Fixed up existing timer test to remove delay dependency Change 3811704 by Ben.Zeigler Fix issue where identical enum redirects registered to different initial names would throw an incorrect error, it's fine if the value change maps are identical Change 3811946 by Ben.Zeigler #jira UE-53511 Fix it so it is possible to set a user defined struct value back to it's default. The UDS hack in PropertyValueToString is no longer needed, but this could affect some other user struct editor operations Change 3812061 by Dan.Oconnor Stepping over or in to nodes that are expanded at compile time (e.g. event nodes, spawn actor nodes) no longer requires multiple 'steps' #jira UE-52854 Change 3812259 by Dan.Oconnor Fix asset broken by removal of an unkown enum #jira UE-51419 Change 3812904 by Ben.Zeigler Make ResolveRedirects on StreamableManager public as it can be used to validate things Change 3812958 by Ben.Zeigler #jira UE-52977 Fix crashes when binding blueprint editor commands to keys and using from invalid contexts Change 3812975 by Mieszko.Zielinski Added contraptions to catch a rare eidtor-time EQS crash #UE4 #jira UE-53468 Change 3818530 by Phillip.Kavan Fix incorrect access to nested instanced subobjects in nativized Blueprint ctor codegen. Change summary: - Modified FEmitDefaultValueHelper::HandleInstancedSubobject() to properly reference the outer and check ptr validity when creating/obtaining nested default subobjects. - Modified FEmitDefaultValueHelper::HandleClassSubobject() to better guard against code generation based on an invalid local variable name. #jira UE-52167 Change 3819733 by Mieszko.Zielinski Marked UAISenseConfig_Blueprint and UAISense_Blueprint as hidedropdown #UE4 #jira UE-15089 Change 3821776 by Marc.Audy Remove redundent code in SpawnActorFromClass that already exists in ConstructObjectFromClass parent class Change 3823851 by mason.seay Moved and renamed blueprints used for Object Reference testing Change 3824165 by Phillip.Kavan Ensure that subobject class types are constructed prior to accessing a subobject CDO in a nativized Blueprint class's generated ctor at runtime. Change summary: - Modified FFakeImportTableHelper to tag subobject class types as a preload dependency of the outer converted Blueprint class type and not of the CDO. #jira UE-53111 Change 3830309 by mason.seay Created Literal Gameplay Tag Container test Change 3830562 by Phillip.Kavan Blueprint nativization bug fixes (reviewed/taken from PR). Change summary: - Modified FSafeContextScopedEmitter::ValidationChain() to ensure that generated code calls the global IsValid() utility function on objects. - Modified FBlueprintCompilerCppBackend::EmitCreateArrayStatement() to generate a proper cast on MakeArray node inputs for enum class types. - Modified FBlueprintCompilerCppBackend::EnimCallStatementInner() to more correctly identify an interface function call site. - Modified FEmitHelper::GenerateAutomaticCast() to properly handle automatic casts of enum arrays. - (Modified from PR source) Added new FComponentDataUtils statics to consolidate custom init code generation for converted special-case component types (e.g. BodyInstance). Ties native component DSOs to the same pre/post as converted non-native component templates around the OuterGenerate() loop. - Modified FExposeOnSpawnValidator::IsSupported() to include CPT_SoftObjectReference property types. - Modified UBlueprintGeneratedClass::CheckAndApplyComponentTemplateOverrides() to no longer break out of the loop before finding additional ICH override record matches. #4202 #jira UE-52188 Change 3830579 by Fred.Kimberley Add support for turning off multiple watches at once in the watch window. #jira UE-53852 Change 3836047 by Zak.Middleton #ue4 - Dev test maps for overlaps perf tests. Change 3836768 by Phillip.Kavan Fix for a build failure that could occur with Blueprint nativization enabled and EDL disabled. This was a regression introduced in 4.18. Change summary: - Modified FEmitDefaultValueHelper::AddStaticFunctionsForDependencies() to emit the correct signature for constructing FBlueprintDependencyData elements when the EDL boot time optimization is disabled. #jira UE-53908 Change 3838085 by mason.seay Functional tests around basic blueprint functions Change 3840489 by Ben.Zeigler #jira UE-31662 Fix regression with renaming parent inherited function. It was not correctly searching the parent's skeleton class during the child's recompile so it was erroneously detecting the parent function as missing Change 3840648 by mason.seay Updated Descriptions on tests Change 3842914 by Ben.Zeigler Improve comments around stremable handle cancel/release Change 3850413 by Ben.Zeigler Fix asset registry memory reporting, track some newer fields and correctly report the state size instead of static size twice Copy of CL #3849610 Change 3850426 by Ben.Zeigler Reduce asset registry memory in cooked build by stripping out searchable names and empty dependency nodes by default Add option to strip dependency data for asset data with no tags, this was always true before but isn't necessarily safe Copy of CL #3850389 Change 3853449 by Phillip.Kavan Fix a scoping issue for local instanced subobject references in nativized Blueprint C++ code. Also, don't emit redundant assignment statements for instanced subobject reference properties. Change summary: - Consolidated FComponentDataUtils into FDefaultSubobjectData and extended FNonativeComponentData from it in order to handle both native & non-native DSO initialization codegen through a more common interface. - Exposed FEmitDefaultValueHelper::HandleInstancedSubobject() as a public API and added a 'SubobjectData' parameter to allow initialization codegen to be deferred until after all default subobjects have been mapped to local variables within the current scope. - Modified FEmitDefaultValueHelper::GenerateConstructor() to first map all default subobjects to local variables and then emit any delta initialization code for property values. - Modified FEmitDefaultValueHelper::HandleSpecialTypes() to return an empty string for an instanced reference to a default subobject. This allows us to avoid emitting initialization statements to unnecessarily reassign instances back to the same property. - Modified FEmitDefaultValueHelper::InnerGenerate() to better handle instanced references to default subobjects, ensuring that we don't emit unnecessary assignment statements and array initialization code to the converted class constructor in C++. - Fixed a few typos. #jira UE-53960 Change 3853465 by Phillip.Kavan Fix plugin module C++ source template to conform to recent public include path changes. Change 3857599 by Marc.Audy PR #4438: UE-54281: Make None a valid default value to select (Contributed by projectgheist) #jira UE-54281 #jira UE-54399 Change 3863259 by Zak.Middleton #ue4 - Save bandwidth for replicated characters by only replicating 4 byte timestamp value to clients if it's actually needed for Linear smoothing. Added option to always replicate the timestamp ("bNetworkAlwaysReplicateTransformUpdateTimestamp", default off), in case users still want this timestamp for some reason, or if smoothing mode changes dynamically and the server won't know. #jira UE-46293 Change 3863491 by Zak.Middleton #ue4 - Reduce network RPC overhead for players that are not moving. Added ClientNetSendMoveDeltaTimeStationary (default 12Hz) to supplement existing ClientNetSendMoveDeltaTime and ClientNetSendMoveDeltaTimeThrottled. UCharacterMovementComponent::GetClientNetSendDeltaTime() now uses this time if Acceleration and Velocity are zero, and the control rotation matches the last ack'd control rotation from the server. Also fixed up code default for ClientNetSendMoveDeltaTime to match default INI value. #jira UE-21264 Change 3865325 by Zak.Middleton #ue4 - Fix static analysis warning about possible null PC pointer. #jira none Change 3869828 by Ben.Zeigler #jira UE-54786 Fix it so -cookonthefly cooperates with -iterate by writing out a development asset registry Change 3869969 by mason.seay Character Movement Functional Tests Change 3870099 by Mason.Seay Submitted asset deletes Change 3870105 by mason.seay Removed link to anim blueprint to fix errors Change 3870238 by mason.seay Test map for Async Loading in a Loop Change 3870479 by Ben.Zeigler Add code to check CoreRedirects for SoftObjectPaths when saving or resolving in the editor. This is a bit slow so we don't want to do it on load We don't have any good way to know the type of a path so I check both Object and Class redirectors, which will also pickup Module renames Change 3875224 by mason.seay Functional tests for Event BeginPlay execution order Change 3875409 by mason.seay Optimized and fixed up character movement tests (because a potential bug in FunctionalTestActor is always passing a test when it can fail) Change 3878947 by Mieszko.Zielinski CIS fixes #UE4 Change 3879000 by Mieszko.Zielinski More CIS fixes #UE4 Change 3879139 by Mieszko.Zielinski Even moar CIS fixes #UE4 Change 3879742 by mason.seay Added animation to Nativization Widget asset Change 3880198 by Zak.Middleton #ue4 - CanCrouchInCurrentState() returns false when character capsule is simulating physics. #jira UE-54875 github #4479 Change 3880266 by Zak.Middleton #ue4 - Optimize UpdateCharacterStateBeforeMovement() to do cheaper tests earlier (avoid CanCrouchInCurrentState() unless necessary, now that it tests IsSimulatingPhysics() which is not trivial). #jira UE-54875 Change 3881546 by Mieszko.Zielinski *.Build.cs files clean up - removed redundant dependencies from NavigationSystem and AIModule #UE4 Change 3881547 by Mieszko.Zielinski Removed a bunch of DEPRECATED functions from the new NavigationSystem module #UE4 Removed all deprecates prior 4.15 (picked this one because I do know some licencees are still using it). Change 3881742 by mason.seay Additional crouch test to cover UE-54875 Change 3881794 by Mieszko.Zielinski Fixed a bug in FVisualLoggerHelpers::GetCategories resulting in losing verbosity information #UE4 Change 3884503 by Mieszko.Zielinski Fixed TopDown code template to make it compile after navsys refactor #UE4 #jira UE-55039 Change 3884507 by Mieszko.Zielinski Switched ensures in UNavigationSystemV1:SimpleMoveToX to error-level logs #UE4 It's an error rather than a warning because the functions no longer do anything. Making it work would require a cyclic dependency between NavigationSystem and AIModule. #jira UE-55033 Change 3884594 by Mieszko.Zielinski Added a const FNavigationSystem::GetCurrent version #UE4 lack of it was causing KiteDemo to not compile. Change 3884602 by Mieszko.Zielinski Mac editor compilation fix #UE4 Change 3884615 by Mieszko.Zielinski Fixed FAIDataProviderValue::GetRawValuePtr not being accessible from outside of AIModule #UE4 Change 3885254 by Mieszko.Zielinski Guessfix for UE-55030 #UE4 The name of NavigationSystem module was put in wrong in the IMPLEMENT_MODULE macro #jira 55030 Change 3885286 by Mieszko.Zielinski Changed how NavigationSystem module includes DerivedDataCache module #UE4 #jira UE-55035 Change 3885492 by mason.seay Minor tweaks to animation Change 3885773 by mason.seay Resaving assets to clear out warning Change 3886433 by Mieszko.Zielinski Fixed TP_TopDownBP's player controller BP to not use deprecated nav functions #UE4 #jira UE-55108 Change 3886783 by Mieszko.Zielinski Removed silly inclusion of NavigationSystemTypes.h from NavigationSystemTypes.h #UE4 Change 3887019 by Mieszko.Zielinski Fixed accessing unchecked pointer in ANavigationData::OnNavAreaAdded #UE4 Change 3891031 by Mieszko.Zielinski Fixed missing includes in NavigationSystem.cpp #UE4 Change 3891037 by Mieszko.Zielinski ContentEample's navigation fix #UE4 #jira UE-55109 Change 3891044 by Mieszko.Zielinski PR #4456: Fix bug in UAISense_Sight::OnListenerForgetsActor (Contributed by maxtunel) #UE4 Change 3891598 by mason.seay Resaving assets to clear out "empty engine version" spam Change 3891612 by mason.seay Fixed deprecated Set Text warnings Change 3893334 by Mieszko.Zielinski Fixed a bug in navmesh generation resulting in not removing layers that ended up empty after rebuilding #UE4 #jira UE-55041 Change 3893394 by Mieszko.Zielinski Fixed navmesh debug drawing to properly display octree elements with "per instance transforms" (like instanced SMs) #UE4 Also, added a more detailed debug drawing of navoctree contents (optional, but on by default). Change 3893395 by Mieszko.Zielinski Added a bit of code to navigation system's initialization that checks the enegine ini for sections refering to the moved navigation classes, and complain about it #UE4 The message is printed as an error-level log line and it says what should the offending section be renamed to. Change 3895563 by Dan.Oconnor Mirror 3895535 Append history from previous branches in source control history view #jira none Change 3896930 by Mieszko.Zielinski Added an option to tick navigation system while the game is paused #UE4 Controlled via NavigationSystemV1.bTickWhilePaused, ini- and ProjectSettings-configurable. #jira UE-39275 Change 3897554 by Mieszko.Zielinski Unified how NavMeshRenderingComponent draws navmesh and octree collision's polys #UE4 Change 3897556 by Mieszko.Zielinski Fixed what kind of nav tile bounds we're sending to nav-colliding elements when calling 'per-instance transform' delegate #UE4 #jira UE-45261 Change 3898064 by Mieszko.Zielinski Made SM Editor display AI-navigation-related whenever bHasNavigationData is set to true #UE4 #jira UE-50436 Change 3899004 by Mieszko.Zielinski Fixed UEnvQueryItemType_Actor::GetItemLocation and UEnvQueryItemType_Actor::GetItemRotation to return FAISystem::InvalidLocation and FAISystem::InvalidRotation respectively instead of '0' when hosted Actor ptr is null #UE4 Note for programmers: this changes the default behavior of this edge case. You might want to go through your code and check if you're comparing UEnvQueryItemType_Actor::GetItem*'s results to 0. Change 3901733 by Mieszko.Zielinski Made FEnvQueryInstance::PrepareContext implementations returning vectors and rotators ignore InvalidLocation and InvalidRotation (respectively) #UE4 Change 3901925 by Ben.Zeigler #jira UE-55395 Fix issue where the cooker could load asset registry caches made in -game that do not have dependency data, leading to broken cooks Change 3902166 by Marc.Audy Make ULevel::GetWorld final Change 3902749 by Ben.Zeigler Fix it so pressing refresh button in asset audit window actually refreshes the asset management database Change 3902763 by Ben.Zeigler #jira UE-55407 Fix it so editor tutorials are not cooked unless referenced, by correctly marking soft object paths imported from editor project settings as editor-only Change 3905578 by Phillip.Kavan The UX to add a new parameter on a Blueprint delegate is now at parity with Blueprint functions. #4392 #jira UE-53779 Change 3905848 by Phillip.Kavan First pass of the experimental Blueprint graph bookmarks feature. #jira UE-10052 Change 3906025 by Phillip.Kavan CIS fix. Change 3906195 by Phillip.Kavan Add missing icon file. Change 3906356 by Phillip.Kavan Moved Blueprint bookmarks enable flag into EditorExperimentalSettings for consistency with other options. Change 3910628 by Ben.Zeigler Partial fix for UE-55363, this allows references to ObjectRedirectors to be switched from parent class to a child class on load as this should always be safe This does not actually fix UE-55363 because that case is changing from UMaterial to UMaterialInstanceConstant, and those are siblings instead of parent/child Change 3912470 by Ben.Zeigler #jira UE-55586 Fix issue with saving redirected soft object paths where the export sort could accidentally cause the parent CDO to get modified between name tagging and writing exports, which is unsafe because due to delta serialization it would try to write names that were not previously tagged Change 3913045 by Marc.Audy Fix issues where recursion in to child actors wasn't being handled correctly Change 3913398 by Fred.Kimberley Fixes a misspelled name for one of the classes in the ability system. PR #4430: Fixed spelling of FGameplayAbilityInputBinds. (Contributed by IntegralLee) #github #jira UE-54327 Change 3918016 by Fred.Kimberley Ensure AllocGameplayEffectContext is being used in all cases where FGameplayeEffectContext is being created. #jira UE-52668 PR #4250: Only create FGameplayEffectContext via AbilitySystemGlobals::.AllocGameplayEffectContext (Contributed by slonopotamus) #github Change 3924653 by Mieszko.Zielinski Fixed LoadEngineClass local to UnrealEngine.cpp to check class redirects before falling back to default class instance #UE4 #jira UE-55378 Change 3925614 by Phillip.Kavan Fix ForEachEnum node to skip over hidden enum values in new placements by default. Change summary: - Added FKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() as an internal-only Blueprint node support API. - Modified FForExpandNodeHelper::AllocateDefaultPins() to add a "Skip Hidden" input pin (advanced). Pin default value is false. - Added a UK2Node_ForEachElementInEnum::PostPlacedNewNode() override to set the default value of the "Skip Hidden" input pin to 'true' for all new node placements. - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include additional expansion logic based on the "Skip Hidden" input pin. For new placements (i.e. when the pin defaults to 'true'), an intermediate branch node will now be inserted into the compiled execution sequence to test for "hidden" metadata on the value before executing the loop body. If the input pin is linked, another intermediate branch will be inserted into the execution sequence prior to the "hidden" metadata test. All existing placements of the node will remain as-is after compilation (i.e. no additional intermediate branch nodes will be included in the expansion). #jira UE-34563 Change 3925649 by Marc.Audy Fix up issue post merge from Main with navigation system refactor Change 3926293 by Phillip.Kavan Temp fix to unblock CIS. #jira UE-34563 Change 3926523 by Marc.Audy Ensure that a renamed Actor is in the correct Actors array #jira UE-46718 Change 3928732 by Fred.Kimberley Unshelved from pending changelist '3793298': #jira UE-53136 PR #4287: virtual additions for AttributeSet extendability (Contributed by TWIDan) #github Change 3928780 by Marc.Audy PR #4309: The display names of the functions. (Contributed by SertacOgan) #jira UE-53334 Change 3929730 by Joseph.Wysosky Submitting test assets for the new Blueprint Structure test cases Change 3931919 by Joseph.Wysosky Deleting BasicStructure asset to rest MemberVariables back to default settings Change 3931922 by Joseph.Wysosky Adding BasicStructure test asset back with default members Change 3932083 by Phillip.Kavan Fix Compositing plugin source files to conform to updated relative include path specifications. - Encountered while testing Blueprint nativization of assets with dependencies on Composure/LensDistortion APIs. Change 3932196 by Dan.Oconnor Resetting a property to default now uses the same codepath as assigning the value from the slate control #jira UE-55909 Change 3932408 by Lukasz.Furman fixed behavior tree services attached to task nodes being sometimes recognized as root level #jira nope Change 3932808 by Marc.Audy PR #4083: Change to UK2Node_BaseAsyncTask to have pin tooltips on latent nodes (Contributed by dwrpayne) #jira UE-50871 Change 3934101 by Phillip.Kavan Revise ForEachEnum node expansion logic to exclude hidden values at compile time. Change summary: - Removed UKismetNodeHelperLibrary::ShouldHideEnumeratorIndex() (no longer in use). - Modified UK2Node_ForEachElementInEnum::ExpandNode() to include an enum switch node in the expansion, which will exclude hidden values when constructed. The additional expansion will occur if the enum type contains at least one hidden value. #jira UE-34563 Change 3934106 by Phillip.Kavan Mirrored 4.19 fixes to allow for EngineTest iteration w/ nativization enabled. Change summary: - Mirrored CLs 3876918, 3878968, 3883257, 3885566, 3912161 and 3920519. Change 3934116 by Phillip.Kavan UBT: Explicitly define the DEPRECATED_FORGAME macro only for non-engine modules. Change summary: - Modified UEBuildModule.SetupPrivateCompileEnvironment() to check the 'bTreatAsEngineModule' flag from the rules assembly rather than testing the module's build type. Change 3934382 by Phillip.Kavan Avoid inclusion of monolothic engine header files in nativized Blueprint codegen. Change 3936387 by Mieszko.Zielinski Added a flag to NavModifierComponent to control whether agent's height is being used while expadning modifier's bounds during navmesh generation #UE4 Change 3936905 by Ben.Marsh Disable IncludeTool warning for DEPRECATED_FORGAME macro; we expect this to be different for game modules. Change 3940537 by Marc.Audy Don't allow maps, sets, or arrays with an actor inner type in user defined structs to select an actor from the currently open level as default value. #jira UE-55938 Change 3940901 by Marc.Audy Properly name CVar global to reflect what it is for Change 3943043 by Marc.Audy Fix world context functions not being able to be used in CheatManager derived blueprints #jira UE-55787 Change 3943075 by Mieszko.Zielinski Moved path-following related delegats' interface from NavigationSystemBase over to a new IPathFollowingManagerInterface #UE4 Change 3943089 by Mieszko.Zielinski Fixed how WorldSettings.NavigationSystemConfig gets created #UE4 Made it so that there's always a NavigationSystemConfig instance present, but added a 'Null' config - this was required due to issues with creation/serialization of instanced subobjects. The change required adding copying constructors to FNavAgentProperties and FNavDataConfig. Also, fixed FNavAgentProperties.IsEquivalent to be symetrical. Change 3943225 by Marc.Audy Fix spelling of Implements Change 3950813 by Marc.Audy Include owner in attachment mismatch ensure #jira UE-56148 Change 3950996 by Marc.Audy Fix cases where bit packed properties used the entire byte not just the bit when interacting with boolean arrays #jira UE-55482 Change 3952086 by Marc.Audy PR #4483: Add Missing Radial Damage Multicast Delegate (Contributed by error454) #jira UE-54974 Change 3952720 by Marc.Audy PR #4575: Check if *Pawn* is a null Pointer (Contributed by dani9bma) #jira UE-56248 Change 3952804 by Richard.Hinckley Changes to BP API export commandlet to support better plugin exporting. Contributed by Harry Wang of Google. Change 3952962 by Marc.Audy UHT now validates that ExpandEnumAsExecs references a valid parameter to the function. #jira UE-49610 Change 3952977 by Phillip.Kavan Fix EDL cycle at load time in nativized cooked builds when a circular dependency exists between converted and unconverted assets. Change summary: - Added FGatherConvertedClassDependencies::MarkUnconvertedClassAsNecessary(). - Modified FFindAssetsToInclude::MaybeIncludeObjectAsDependency() to mark unconverted BPGCs (e.g. DOBPs) as necessary for conversion when the potential for a circular dependency exists so that we generate stub wrappers rather than depend on them directly. - Fixed a few typos in existing API names. #jira UE-48233 Change 3953658 by Marc.Audy (4.19.1) Fix inserting a reroute node causing connections to break on a GetClassDefaults node #jira UE-56270 Change 3954727 by Marc.Audy Add friendly name to custom version mismatch message Change 3954906 by Marc.Audy (4.19.1) Fix crash when undoing changes related to reroute nodes connected to a GetClassDefaults node #jira UE-56313 Change 3954997 by Marc.Audy Ensure and return null if GetOuter<WithinClass> is called on a CDO for uclasses declared as within another so we don't get a UPackage c-style cast to the expected outer type Change 3955091 by Marc.Audy Do not register subcomponents that are not auto register #jira UE-52878 Change 3955943 by Marc.Audy Make AbilitySystemComponent pass parameters by const& instead of ref as no state is being changed Change 3956185 by Zak.Middleton #ue4 - Fix Characters using scoped movement updates (the default) not visually rotating when rotated at small rates at high framerate. This was caused by FScopedMovementUpdate::IsTransformDirty() using a larger FTransform comparison tolerance than USceneComponent::UpdateComponentToWorldWithParent(). #jira none Change 3958102 by Marc.Audy Clean out dead code path from k2node_select Select node now resets pins to wildcard if none of the pins are in use Change 3958113 by Lukasz.Furman added OnSearchStart call to root level behavior tree services #jira UE-56257 Change 3958361 by Marc.Audy Fix literal input pins on select being set to wildcard during compilation Change 3961148 by Dan.Oconnor Mirror 3961139 from Release 4.19 Fix for placeholder objects being left behind when loading certain UMG assets - this could causea crash when loading UMG assets #jira UE-55742 Change 3961640 by Marc.Audy Select node now displays Add Pin button Undo of changing select node index type now works correctly. Connections to option pins now maintained across change of index pin type #jira UE-20742 Change 3962262 by Marc.Audy Display "Object Reference" instead of "Object Object Reference" and "Soft Object Reference" instead of "Object Soft Object Reference" Change 3962795 by Phillip.Kavan Fix for a crash when cooking with Blueprint nativization enabled after encountering a nested instanced editor-only default subobject inherited from a native C++ base class. - Mirrored from //UE4/Release-4.19 (3962782) #jira UE-56316 Change 3962991 by Marc.Audy Modify Negate/Increment/Decrement Int/Float so that the output is always the desired result even if a non-mutable pin is passed in. Note that this can mean the result being returned and the value of the pin passed in if queried again will not be the same (in the case of pure nodes). #jira UE-54807 Change 3963114 by Marc.Audy Fix ensures/crash as a result of UClass expecting to be able to access the UPackage of CDOs via the GetOuterUPackage call. Change 3963427 by Marc.Audy Fix initialization order Initialize bUseBackwardsCompatForEmptyAutogeneratedValue Change 3963781 by Marc.Audy Fix without editor compiles Change 3964576 by Marc.Audy PR #4599: : Working category for timelines (Contributed by projectgheist) #jira UE-56460 #jira UE-26053 Change 3964782 by Dan.Oconnor Mirror 3964772 from Release 4.19 Fix crash when force deleting certain blueprints, we can only check for authoritativeness while reinstancing #jira UE-56447 Change 3965156 by Mieszko.Zielinski PR #4592: Visual Logger optimization to fix rapid FPS drop when many items are hidden (Contributed by tstaples) #jira UE-56435 Change 3965173 by Marc.Audy (4.19.1) Fix incorrectly switching a cooling down tick to be an enabled tick when marking it enabled. #jira UE-56431 Change 3966117 by Marc.Audy Fix select nodes inside macros using wildcard array inputs having issues resolving type. #jira UE-56484 Change 3878901 by Mieszko.Zielinski NavigationSystem's code refactored out of the engine and into a new separate module #UE4 The CL contains required changes to all of our internal projects. Fortnite and Paragon have been tested, while the rest have been only compiled. Change 3879409 by Mieszko.Zielinski Further fallout fixes after ripping out NavigationSystem out of the engine #UE4 - Fixed bad ini redirects (had NavigationSystem.NavigationSystem instead of NavigationSystem.NavigationSystemV1) - Added missing FNavigationSystem::GetDefaultNavDataClass binding (resulting in QAGame's func tests failing) Change 3897655 by Ben.Zeigler #jira UE-55211 Fix it so literal soft object pins on blueprint nodes get correctly cooked/referenced It now sets the thread context to skip internal serialize and calls the archive's serialize function instead of bypassing it, which allows it to pick up references Change 3962780 by Marc.Audy When preventing a split pin from being orphaned, all sub pins must also be prevented. #jira UE-56328 Repack members of UEdGraphPin to avoid wasted space (saves 16bytes) [CL 3967553 by Marc Audy in Main branch]
2018-03-27 14:27:07 -04:00
{
UNavCollisionBase::ConstructNewInstanceDelegate = UNavCollisionBase::FConstructNew::CreateStatic(&CreateNewNavCollisionInstance);
}
}
FGuid UNavCollision::GetGuid() const
{
return BodySetupGuid;
}
void UNavCollision::Setup(UBodySetup* BodySetup)
{
// Create meshes from cooked data if not already done
Copying //UE4/Dev-Framework to //UE4/Dev-Main (Source: //UE4/Dev-Framework @ 3227619) #rb none #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3198996 on 2016/11/15 by Marc.Audy BeginPlay calls will now be dispatched in a consistent order regardless of placed in persistent level, streamed in level, or dynamically spawned AActor::BeginPlay is now protected, you should call DispatchBeginPlay instead. #jira UE-21136 Change 3199019 on 2016/11/15 by Marc.Audy Mark user-facing BeginPlay calls as protected Change 3200128 on 2016/11/16 by Thomas.Sarkanen Dont propgate threaded update flag from UAnimBluepint to CDO if we fail thread safety checks Also fully deprecated (with _DEPRECATED) older flags in UAnimInstance. #jira UE-38362 - Disable multi-threaded update when anim blueprints are not thread-safe Change 3200133 on 2016/11/16 by Martin.Wilson Fix Set Anim Instance Class not working on the second attempt (InitAnim would not be called) #jira UE-18798 Change 3200167 on 2016/11/16 by Martin.Wilson Newly added virtual bones are now selected in the skeleton tree #jira UE-37776 Change 3200255 on 2016/11/16 by James.Golding Stop SkeletalMeshTypes.h being globally included Change 3200289 on 2016/11/16 by Jurre.deBaare Hidden Material References from Mesh Components Fix #fix Make sure that in PostEditChangeProp we reset the override material arrays #misc changed a property comparison to use GET_MEMBER_NAME_CHECKED instead #jira UE-38108 Change 3200291 on 2016/11/16 by Jurre.deBaare Imported Alembic skeletal anims have cut-off shadow due to moving out of the bounds #fix retrieve bounds from alembic archive at various levels (global, transform, meshes) and build archive bounds which is set on the animation sequence #jira UE-37274 Change 3200293 on 2016/11/16 by Jurre.deBaare Overlapping UV's cause merge actor texture baking issues #fix Only look for overlapping UVs if vertex data baking is actually expected/enabled #jira UE-37220 Change 3200294 on 2016/11/16 by Jurre.deBaare Scrubbing Playback Speed under Geometry Cache in the details panel is too sensitive #fix Make the UIMin/Max smaller than the clamping value for proper user interaction while sliding (thanks James for the tip!) #jira UE-36679 Change 3200295 on 2016/11/16 by Jurre.deBaare Merge Actor Specific LOD level can be set to 8 #fix Change clamping value and added UI clamp metadata #jira UE-37134 Change 3200296 on 2016/11/16 by Jurre.deBaare In Merge Actors if you select use specific Lod level you have access to all the merge material settings #fix Added edit condition to non-grayed out material settings #jira UE-36667 Change 3200303 on 2016/11/16 by Thomas.Sarkanen Fixed diagonal current scrub value in anim curves #jira UE-35787 - The red time indicator for viewing curves in persona is slightly tilted Change 3200304 on 2016/11/16 by Thomas.Sarkanen Rezero is now explicit about what it does (current vs. specified frame) Also no longer ingores Z-offset (legacy feature - root motion can have any translation, not just 2D). #jira UE-35985 - Rezero doesn't work by frame Change 3200307 on 2016/11/16 by Thomas.Sarkanen Add curve panel to anim BP editor Also improve curve modification message routing. We were needlessly passing delegates up and down the widget hierarchy and conflating smart name edits with curve edits (key addition etc.). #jira UE-35742 - Anim Curve Viewer allowed in Anim BP Change 3200313 on 2016/11/16 by Jurre.deBaare Animations with materials driven by scalar parameters from curves wont update until persona is closed and reopened #fix in debug skeletal mesh component just mark the cached parameters dirty every tick #jira UE-35786 Change 3200316 on 2016/11/16 by Jurre.deBaare Converted Skeletal To Static Mesh Gets Corrupted When Merged #fix Assume that the all static meshes will contain valid texture coordinates for channel 0 (which is expect by static mesh code as well) #misc Ensure that we set the lightmap index for converted skeletal meshes to either an empty one or the highest one used #jira UE-37988 Change 3200321 on 2016/11/16 by Jurre.deBaare Scrolling/scroll bar are disabled in Alembic Import window if you scroll a certain way down #fix change the way the layout is constructed #jira UE-37260 Change 3200323 on 2016/11/16 by Jurre.deBaare Toggling sky in Persona does not effect reflections #fix turn of skylight together with the actual environment sphere #misc found incorrect copy paste in toggling floor/environment visibility with key stroke #jira UE-26796 Change 3200324 on 2016/11/16 by Jurre.deBaare Open Merge Actor menu on right clicking two selected actors #fix Added option 'Merge Actors' to right-click context menu when having selected one or multiple actors in the viewport #jira UE-36892 Change 3200331 on 2016/11/16 by Benn.Gallagher Added support for suspending clothing simulations at runtime, exposed also to blueperints. And aded option in Persona to pause simulations when animations are paused. #jira UE-38620 Change 3200334 on 2016/11/16 by Jurre.deBaare Dynamic light settings in Persona viewport cause edges to appear hardened #fix Makeing the directional light stationary to ups the shadowing quality #jira UE-37188 Change 3200356 on 2016/11/16 by Jurre.deBaare Rate scale option for animation nodes in blend spaces #added Rate scale variable to blend space samples, these rates are now multiplied with the global rate scale during playback #misc bumped framework object version to update all blendspaces on load #jira UE-16207 Change 3200380 on 2016/11/16 by Jurre.deBaare Fix for Mac CIS issues Change 3200383 on 2016/11/16 by Marc.Audy Split FAttenuationSettings in to FBaseAttenuationSettings and FSoundAttenuationSettings in preparation for reuse of the base attenuation for force feedback Change 3200385 on 2016/11/16 by James.Golding Refactor SkeletalMesh to use same color buffer type as StaticMesh Change 3200407 on 2016/11/16 by James.Golding Fix CIS error in FbxAutomationTests.cpp Change 3200417 on 2016/11/16 by Jurre.deBaare Fix for CIS issues #fix Rogue } Change 3200446 on 2016/11/16 by Martin.Wilson Change fix for Set Anim Instance Class from CL 3200133 #jira UE-18798 Change 3200579 on 2016/11/16 by Martin.Wilson Fix for serialization crash in Odin #jir UE-38683 Change 3200659 on 2016/11/16 by Martin.Wilson Fix build errors Change 3200801 on 2016/11/16 by Lina.Halper Fix error message Change 3200873 on 2016/11/16 by Lina.Halper Test case for Update Rate Optimization - LOD_URO_Map.umap - test map - LODPawn - pawn that contains mesh with URO setting - You can tweak the value in LODPawn Change 3201017 on 2016/11/16 by Lina.Halper - Allow slave component to be removed when setting master pose to nullptr - licensee reported this issue. https://udn.unrealengine.com/questions/321037/skeletalmeshcomponent.html Change 3201765 on 2016/11/17 by Jurre.deBaare Improved tooltip for FBlendParameter.GridNum Change 3201817 on 2016/11/17 by Thomas.Sarkanen Added display/edit of bone transforms in details panel Added UBoneProxy tickable editor object held by the skeleton tree that updates its internal transforms in Tick(). Updated various bits of supporting code to allow selection to be properly preserved in cases such as undo/redo. This allows the bone proxy object to be displayed over an undo/redo event. It also fixes some inconsistency with selection between the skeleton tree and the preview scene. Breaking change: Updated FOnPreviewMeshChangedMulticaster delegate signature to take both the old and new skeletal mesh. This is to allow clients to skip certain logic if the skeletal mesh hasnt really changed (in this case de-selection). #jira UE-38144 - Selected Bone Transform not visible in Persona on the AnimBP tab Change 3201819 on 2016/11/17 by Thomas.Sarkanen Fix CIS error Change 3201901 on 2016/11/17 by Lina.Halper With new system, the skeleton curve count is not the one we should check but BoneContainer.GetAnimCurveNameUids(). - removed GetCurveNumber from skeleton - changed curve count to use BoneContainer's curve list. #code review: Laurent.Delayen Change 3201999 on 2016/11/17 by Thomas.Sarkanen Add local/world transform editing to bone editing Added details customization & support code for world-space editing of bone transforms #jira UE-38144 - Selected Bone Transform not visible in Persona on the AnimBP tab Change 3202111 on 2016/11/17 by mason.seay Potential test assets for HLOD Change 3202240 on 2016/11/17 by Thomas.Sarkanen Fixed extra whitespace not being removed in front of console commands. GitHub #2843 #jira UE-37019 - GitHub 2843 : Fixed extra whitespace not being removed in front of console commands. Change 3202259 on 2016/11/17 by Jurre.deBaare Readded missing shadows in advanced preview scene Change 3203180 on 2016/11/17 by mason.seay Moved and updated URO Map Change 3203678 on 2016/11/18 by Thomas.Sarkanen Bug fix for menu extenders in PhAT. GitHub #2550 #jira UE-32678 - GitHub 2550 : Bug fix for menu extenders in PhAT. Change 3203679 on 2016/11/18 by Thomas.Sarkanen Fixed LOD hysteresis not being properly converted from the old metric This addreses some 'LOD lag' issues seen when just treating as an equivalent fudge factor, as the magnitude needed to have an effect has changed. #jira UE-38640 - Skeletal mesh LODs render incorrectly and incosistently Change 3203747 on 2016/11/18 by Jurre.deBaare Crash when repeatedly undoing and readding of animation to a AnimOffset 1D - IsValidBlendSampleIndex #fix Ensure we reset the hightlighting / dragging / selection state when PostUndo is called, this makes sure we repopulate tooltips if need etc. #jira UE-38734 Change 3203748 on 2016/11/18 by Jurre.deBaare Crash Generating Proxy Meshes after replacing static meshes in the level #fix just calculate bounds for the used UVs (old behaviour was wrong) #jira UE-38764 Change 3203751 on 2016/11/18 by james.cobbett Changes to TM-PoseSnapshot and new test assets Change 3203799 on 2016/11/18 by Thomas.Sarkanen Switched fudged auto-LOD calculations to use a pow() decay instead of a recprocal Still a fudge when LOD reduction has not been performed in-engine, but a fudge with similar outcomes to the previous method. Also fixed up the naming of some variables that still referred to screen areas & LOD distances. #jira UE-38674 - LOD distance switching have changed since 4.14 and merged lod actors seem to switch at incorrect screen scales as a result Change 3203856 on 2016/11/18 by james.cobbett TM-PoseSnapshot - Rebuild lighting and updated anims Change 3203880 on 2016/11/18 by Ori.Cohen Copying //UE4/Dev-Physics-Upgrade to Dev-Framework (//UE4/Dev-Framework) Change 3203940 on 2016/11/18 by Ori.Cohen Fix missing newline for ps4 Change 3203960 on 2016/11/18 by Ori.Cohen Readd fix for linux macro expansion warning Change 3203975 on 2016/11/18 by Ori.Cohen Fix for linux toolchain not knowing about no-unused-local-typedef Change 3203989 on 2016/11/18 by Ori.Cohen Make sure physx automation doesn't try to build html5 APEX. Change 3204031 on 2016/11/18 by james.cobbett Minor update to test level Change 3204035 on 2016/11/18 by Marc.Audy Additional Attenuation refactor cleanup Change 3204044 on 2016/11/18 by Ori.Cohen Fix typo of NV_SIMD_SSE2 Change 3204049 on 2016/11/18 by Ori.Cohen Fix missing newline for PS4 compiler Change 3204463 on 2016/11/18 by mason.seay Finalized URO test map Change 3204621 on 2016/11/18 by mason.seay Small improvements Change 3204751 on 2016/11/18 by Ori.Cohen Make PhAT highlight selected bodies and constraints in the tree view Change 3205868 on 2016/11/21 by Marc.Audy Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3205744 Change 3205887 on 2016/11/21 by Jurre.deBaare Fix for similar crash in blendspace editor like UE-38734 Change 3206121 on 2016/11/21 by Marc.Audy PR #2935: Minor subtitle issues (Contributed by projectgheist) #jira UE-38803 #jira UE-38692 Change 3206187 on 2016/11/21 by Marc.Audy PR #2935: Minor subtitle issues (Contributed by projectgheist) Additional bits #jira UE-38519 #jira UE-38803 #jira UE-38692 Change 3206318 on 2016/11/21 by Marc.Audy Fix Linux compiler whinging Change 3206379 on 2016/11/21 by Marc.Audy Fix crash when streaming in a sublevel with a child actor in it (4.14.1) #jira UE-38906 Change 3206591 on 2016/11/21 by Marc.Audy Refactor restrictions to allow hidden and clarify disabled Change 3206776 on 2016/11/21 by Marc.Audy ForceFeedback component allows rumble events to be placed or spawned in to the world with attenuation settings that dictate how intensely the rumble pattern will be applied to the player based on their distance to the effect. ForceFeedback Attenuation settings can be defined via the content browser or directly on the component. #jira UEFW-244 Change 3206901 on 2016/11/21 by Marc.Audy Fix compile error in automation tests Change 3207235 on 2016/11/22 by danny.bouimad Updated Map Change 3207264 on 2016/11/22 by Thomas.Sarkanen Disable bone editing in anim blueprint editor #jira UE-38876 - Transform options in bone Details panel in Anim Blueprint Persona editor appear editable Change 3207303 on 2016/11/22 by Lina.Halper Clear material curve by setting it directly because the flag might not exist #jira: UE-36902 Change 3207331 on 2016/11/22 by Jon.Nabozny Fix overflow issues in SerializeProperties_DynamicArray_r. Also, fix crash from not ensuring properties were serialized successfully. Change 3207357 on 2016/11/22 by Danny.Bouimad Updating testcontent for pose drivers Change 3207425 on 2016/11/22 by Lina.Halper Fix frame count issue with montage #jira: UE-30048 Change 3207478 on 2016/11/22 by Lina.Halper Fix so that curve warning doesn't happen when your name is same. #jira: UE-34246 Change 3207526 on 2016/11/22 by Marc.Audy Fix crash when property restriction introduces a hidden entry Change 3207731 on 2016/11/22 by danny.bouimad MoreUpdates Change 3207764 on 2016/11/22 by Lina.Halper #fix order of morphtarget to first process animation and then BP for slave component Change 3207842 on 2016/11/22 by Ben.Zeigler Fix it so ActiveStructRedirects are checked in addition to ActiveClassRedirects when serializing a raw UStruct reference, such as in a blueprint UStructProperty. This fixes issue with the attenuation settings struct rename, and should have always been working this way. ActiveClassRedirects will still work. Change 3208202 on 2016/11/22 by Ben.Zeigler #jira UE-38811 Fix regression with gimbal locking in player camera manager. The quat->rotator->quat->rotator conversions are introducing more error than in 4.13, so a pitch limit of -89.99 was too precise. Change 3208510 on 2016/11/23 by Wes.Hunt Disable UBT Telemetry on internal builds #jira AN-1059 #tests build a few different ways, add more diagnostics to clarify if the provider is being used. Change 3208734 on 2016/11/23 by Martin.Wilson Change EnsureAllIndicesHaveHandles to try and maintain validity of as many of the handles as possible + Make FRichCurve key member private as it needs to stay in sync with map on base class #jira UE-38899 Change 3208782 on 2016/11/23 by Thomas.Sarkanen Fixed material and vert count issues with skeletal to static mesh conversion Material remapping was not bein gbuilt, so material indices were overwitten inappropriately. Vertex tangentY was being recalculated incorrectly (discarding the W component when transformed), so vertices were not correctly re-merged later in the static mesh build phase. #jira UE-37898 - Materials are incorrect on static mesh made from skeletal mesh Change 3208798 on 2016/11/23 by James.Golding UE-38478 - Fix collision on procmesh created in BeginPlay in cooked builds Change 3208801 on 2016/11/23 by Jurre.deBaare Hidden Material References from Mesh Components Fix #fix forgot to mark the renderstate dirty and wrapped it to only apply when overridematerials actually contain something #jira UE-38108 Change 3208807 on 2016/11/23 by Thomas.Sarkanen CIS fix Change 3208824 on 2016/11/23 by danny.bouimad More content updates for Testing Change 3208827 on 2016/11/23 by Danny.Bouimad Removing Old Pose driver Testassets I created awhile ago. Change 3209026 on 2016/11/23 by Martin.Wilson CIS Fix for FRichCurve Change 3209083 on 2016/11/23 by Marc.Audy Don't crash if after an undo the previously selected object no longer exists (4.14.1) #jira UE-38991 Change 3209085 on 2016/11/23 by Marc.Audy Don't crash if a negative length passed in to UKismetStringLibrary::GetSubstring (4.14.1) #jira UE-38992 Change 3209124 on 2016/11/23 by Ben.Zeigler #jira UE-38867 Fix some game mode log messages From PR #2955 Change 3209231 on 2016/11/23 by Marc.Audy Auto removal Change 3209232 on 2016/11/23 by Marc.Audy GetComponents now optionally can include components in Child Actors Change 3209233 on 2016/11/23 by Marc.Audy ParseIntoArray resets instead of empty Change 3209235 on 2016/11/23 by Marc.Audy Allow child actor components to be selected in viewports Fix selection highlight not working on nested child actors #jira UE-16688 Change 3209247 on 2016/11/23 by Marc.Audy Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3209194 Change 3209299 on 2016/11/23 by Marc.Audy Use MoveTemp to reduce some memory churn in graph schema actions Change 3209347 on 2016/11/23 by Marc.Audy Don't dispatch a tick function that had been scheduled but has been disabled before being executed. #jira UE-37459 Change 3209507 on 2016/11/23 by Ben.Zeigler #jira UE-38185 Keep player controllers in their same order during a seamless travel From PR #2908 Change 3209882 on 2016/11/24 by Thomas.Sarkanen Copy-to-array now works with the fast path Refactored the copy record generation/validation code to be clearer with better seperation of concerns. Made sure we always properly generate a full exec chain for our events, despite some other them potentially using the fast path (this may have been a bug waiting to happen). Fixed a potentiual bug with sub anim instances were potentiall fast path non-array properties were skipped. Added tests for fast path validity to EditorTests project. Assets to follow. #jira UE-34569 - Fast Path gets turned off if you link to multiple input pins Change 3209884 on 2016/11/24 by Thomas.Sarkanen File I missed Change 3209885 on 2016/11/24 by Thomas.Sarkanen Support assets for fast path tests Change 3209939 on 2016/11/24 by Benn.Gallagher Fixed anim blueprint compiler not following reroute nodes when building cached pose fragment list #jira UE-35557 Change 3209941 on 2016/11/24 by Jurre.deBaare Removing and readding a point to the Anim Offset graph results in the animation to not preview correctly. #fix make sure that when we delete a sample point we reset the preview base pose #misc changed how the preview base pose is determined/updated #jira UE-38733 Change 3209942 on 2016/11/24 by Thomas.Sarkanen Fixed transactions being made when setting bone space in details panel Also added reset to defaults to allow easy removal of bone modifications. #jira UE-38957 - Switching between Local and World Location in Persona Bone Transform options creates an Undo transaction Change 3209945 on 2016/11/24 by james.cobbett Test assets for Pose Snapshot Test Case Change 3210239 on 2016/11/25 by Mieszko.Zielinski Making Navmesh react to changes done to static mesh's collision setup via the SM Editor #UE4 #jira UE-29415 Change 3210279 on 2016/11/25 by Benn.Gallagher Fixed anim sub-instances only allowing one pin to work when any pin required a call out to the VM for evaluation #jira UE-38040 Change 3210288 on 2016/11/25 by danny.bouimad Cleaned up Pose Driver Anim BP's Change 3210334 on 2016/11/25 by Benn.Gallagher Fixed preview mesh references getting broken in physics assets when renaming the preview mesh asset. Added explicit reference collection for the TAssetPtr #jira UE-22145 Change 3210349 on 2016/11/25 by James.Golding UE-35783 Fix scrolling in PoseAsset editor panels Change 3210356 on 2016/11/25 by James.Golding UE-38420 Disable 'Convert to Static Mesh' option if no MeshComponents selected (e.g. cables) Change 3210357 on 2016/11/25 by Jurre.deBaare Numeric textbox value label incorrect for aimoffset/blendspaces in grid #fix change lambda capture type (was referencing local variable) Change 3210358 on 2016/11/25 by Jurre.deBaare Crash Generating Proxy Mesh with Transition Screen Size set to 1 #fix 1.0 was not included within the possible range #jira UE-38810 Change 3210364 on 2016/11/25 by James.Golding Improve BuildVertexBuffers to use stride and avoid copying colors Change 3210371 on 2016/11/25 by Jurre.deBaare You can no longer enable tooltip display when using anim offset #fix Added back ability to show advanced preview sample weighting to tooltip under CTRL down #jira UE-38808 It's not clear that the user has to hold shift to preview in blend spaces #fix Preview value is now set by default and has a tooltip state, this will inform the user how to move the preview value #jira UE-38711 #misc refactored out some duplicate code :) Change 3210387 on 2016/11/25 by james.cobbett Updating test asset Change 3210550 on 2016/11/26 by Marc.Audy Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3209927 Brings IWYU in and required substantial fixups Change 3210551 on 2016/11/26 by Marc.Audy Delete empty cpp files Change 3211002 on 2016/11/28 by Lukasz.Furman added navigation update on editting volume's brush #ue4 Change 3211011 on 2016/11/28 by Marc.Audy Roll back CL# 3210334 as it is causing deadlocks during GC Change 3211039 on 2016/11/28 by Jurre.deBaare Merge Actors tool is splitting every vertex on spline meshes, causing hard edged vertex colors. #fix prevent using the wedge map when propagating spline mesh vertex colours #jira UE-36011 Change 3211053 on 2016/11/28 by Ori.Cohen Make sure objects without simple collision do not simulate. Fixes crash when two trimesh only objects collide #JIRA UE-38989 Change 3211101 on 2016/11/28 by mason.seay Adjusting trigger collision so it can't be triggered by projectiles Change 3211171 on 2016/11/28 by Jurre.deBaare Previewing outside of Blendspace Graph points causes unexpected weighting #jira UE-32775 Second Animation Sample added to AimOffset or Blendspace swaps with the first sample #jira UE-36755 #fix Changed behaviour for calculating blendspace grid weighting for one, two or colinear triangles - One: fill grid weights to single sample - Two: find closest point on line between the two samples for the grid point, and weight according to the distance on the line - Colinear: find two closest samples and apply behaviour above #misc rename variables to make the code more clear and correct Change 3211491 on 2016/11/28 by Marc.Audy Provide proper tooltip for GetParentActor/Component Expose GetAttachParentActor/SocketName to blueprints De-virtualize Actor GetAttach... functions #jira UE-39056 Change 3211570 on 2016/11/28 by Lina.Halper Title doesn't update when asset is being dropped #jira: UE-39019 Change 3211766 on 2016/11/28 by Ori.Cohen Remove warning when a constraint has two empty components. This can be a valid usecase for when components are determined dynamically. #JIRA UE-36089 Change 3211938 on 2016/11/28 by Mason.Seay CSV's for testing gameplay tags Change 3212090 on 2016/11/28 by Ori.Cohen Expose angular SLERP drive to blueprints #JIRA UE-36690 Change 3212102 on 2016/11/28 by Marc.Audy Fix shadow variable issue #jira UE-39099 Change 3212182 on 2016/11/28 by Ori.Cohen PR #2902: Fix last collision preset display (Contributed by max99x) #JIRA UE-38100 Change 3212196 on 2016/11/28 by dan.reynolds AEOverview Update: Minor tweaks and fixes Added Attenuation Curve Tests Renamed SC to SCLA for Sound Class prefix WIP SCON (Sound Concurrency) Change 3212347 on 2016/11/28 by Ben.Zeigler #jira UE-39098 Fix issues with adding tag redirectors with the editor open, it now checks the redirector list in the editor Fix chained tag redirectors to work properly Const fixes and removed a bad error message spam, and fix rename message Change 3212385 on 2016/11/28 by Marc.Audy Avoid duplicate GetWorld() calls Change 3212386 on 2016/11/28 by Marc.Audy auto shoo Change 3213018 on 2016/11/29 by Marc.Audy Fix shadow variable for real Change 3213037 on 2016/11/29 by Ori.Cohen Fix deprecation warnings Change 3213039 on 2016/11/29 by Marc.Audy Generalize logic for when a component prevents an Actor from auto destroying Add forcefeedback component to the components that will hold up the auto destroy of an actor Change 3213088 on 2016/11/29 by Marc.Audy Move significance manager out of experimental Change 3213187 on 2016/11/29 by Marc.Audy Add InsertDefaulted to mirror options available when Adding Change 3213254 on 2016/11/29 by Marc.Audy add auto-complete for showdebug forcefeedback Change 3213260 on 2016/11/29 by Marc.Audy Allow systems to inject auto-complete console entries Change 3213276 on 2016/11/29 by Marc.Audy add auto-complete entry for showdebug significancemanager Change 3213331 on 2016/11/29 by James.Golding Split SkeletalMesh skin weights into their own stream Remove unused FGPUSkinVertexColor struct Remove unused FSkeletalMeshVertexBuffer::bInfluencesByteSwapped bool Fix FSkeletalMeshMerge::GenerateLODModel to handle >4 weights Update friendly name for FColorVertexBuffer now it's used by skel mesh as well Change 3213349 on 2016/11/29 by Ben.Zeigler Fix tag rename feedback message Change 3213355 on 2016/11/29 by Ben.Zeigler #jira UE-39115 PR #2987: Added IsPaused to AGameModeBase (Contributed by RoyAwesome) Change 3213406 on 2016/11/29 by Ori.Cohen Make sure body transforms are not set while the physx simulation is running. #JIRA UE-37270 Change 3213508 on 2016/11/29 by Jurre.deBaare When performing a merge actor on an actor merging multiple materials certain maps aren't generated #fix Apparently rendering out specular etc now outputs its value only to the red channel, so had to change how we populate the combined metallic/roughness/specular map #jira UE-38526 Change 3213557 on 2016/11/29 by Ben.Zeigler #jira UE-22145 Fix issues where TAssetPtrs weren't getting properly fixed up during rename fixup, it now runs the StringAssetReference fixup on the nested reference. This should fix lots of weird issues with references going away Change 3213634 on 2016/11/29 by Ori.Cohen Make sure if no shapes are found for vehicle wheels we create spheres and attach them to the actor. Change 3213639 on 2016/11/29 by Ori.Cohen Fix from nvidia for vehicle suspension exploding when given a bad normal. #JIRA UE-38716 Change 3213812 on 2016/11/29 by James.Golding UE-35925 Remove hard-coded asset<->animnode mapping, add SupportsAssetClass virtual instead Change 3213824 on 2016/11/29 by Ori.Cohen Fix CIS Change 3213873 on 2016/11/29 by Ori.Cohen Fix welded bodies not properly computing mass properties. #JIRA UE-35184 Change 3213950 on 2016/11/29 by Mieszko.Zielinski Fixed navigation collision being generated wrong for StaticMeshes created from BSP #Orion #jira UE-37221 Change 3213951 on 2016/11/29 by Mieszko.Zielinski Fixed perception system having issue with registering perception listener spawned in sublevels #UE4 #jira UE-37850 Change 3214005 on 2016/11/29 by Ori.Cohen Fix mass kg override not propagating to blueprint instances. Change 3214046 on 2016/11/29 by Marc.Audy Duplicate all instanced subobjects, not just those that are editinlinenew Make AABrush.Brush instanced rather than export #jira UE-39066 Change 3214064 on 2016/11/29 by Marc.Audy Use GetComponents directly where safe instead of copying in to an array Change 3214116 on 2016/11/29 by James.Golding Fix tooltip when dragging anim assets onto players Change 3214136 on 2016/11/29 by Ori.Cohen Make it so moving bodies is immediate when in editor. Useful for editor tools that rely on physx data #JIRA UE-35864 Change 3214162 on 2016/11/29 by Mieszko.Zielinski Fixed a bug in EnvQueryGenerator_SimpleGrid resuting in one extra column and row of points being generated #UE4 #jira UE-12077 Change 3214177 on 2016/11/29 by Marc.Audy Use correct SocketName (broken in CL#2695130) #jira UE-39153 Change 3214427 on 2016/11/29 by dan.reynolds AEOverview Update Fixed Attenuation tests when overlapping attenuation ranges between streamed levels Added Sound Concurrency Far then Prevent New testmap Removed some Sound Concurrency assets Change 3214469 on 2016/11/29 by dan.reynolds AEOverview Update Added Sound Concurrency Test for Stop Farthest then Oldest Change 3214842 on 2016/11/30 by Jurre.deBaare LookAt AimOffset in the Anim Graph causes character to explode #jira UE-38533 #fix ensure that the source socket exists on the skeleton during compilation (as far as we can), and skip blendspace evaluation in case of it not being valid during runtime Change 3214866 on 2016/11/30 by james.cobbett Updating Pose Snapshot test assets Change 3214964 on 2016/11/30 by thomas.sarkanen Added test data for facial animtion curves Change 3215015 on 2016/11/30 by Jurre.deBaare When a Aim Offset axis value is edited drastically the preview mesh will be deformed #fix change the way we change data when axis values are changed, simply remap normalized samples to new axis range #misc marked some data/functions editor only (not needed during runtime so reduces footprint a little bit) #jira UE-38880 Change 3215029 on 2016/11/30 by Marc.Audy Fix CIS Change 3215033 on 2016/11/30 by Marc.Audy Add a delegate for when new classes are added via hotreload Change existing hotload class reinstancing delegates to be multicast Change 3215048 on 2016/11/30 by Jon.Nabozny Use getKinematicTarget whenever a body is kinematic. This should fix some edge cases in FBodyInstance where stale transforms may be used when operations are run in PrePhysics. #jira UE-37877 Change 3215052 on 2016/11/30 by Marc.Audy Generalize the volume actor factory logic Create volume factories when hotreload adds a new volume class #jira UE-39064 Change 3215055 on 2016/11/30 by Marc.Audy Probable fix for IOS CIS failure Change 3215091 on 2016/11/30 by Lina.Halper Easy alternative fix for blending two curves per bone. For now we just combine. To fix this properly - i.e. per bone to affect curve - it is very expensive process, so opting into this for 4.15. #jira: UE-39182 Change 3215179 on 2016/11/30 by Jurre.deBaare Preview viewport should only use rendering features supported in project #fix replace the skylight with a sphere reflection component, this will not give image based lighting but does supply the user with a reflection map + intensity #jira UE-37252 Change 3215189 on 2016/11/30 by Jurre.deBaare CIS fix Change 3215326 on 2016/11/30 by Ben.Zeigler #jira UE-39077 Fix OnActive gameplay cues on standalone servers, it was incorrectly assuming it was in mixed replication mode. Regression caused by CL #3104976 Change 3215523 on 2016/11/30 by James.Golding Fix cooking old skel meshes in commandlet - vertex buffer was not recreated so UpdateUVChannelData would crash Change 3215539 on 2016/11/30 by Marc.Audy Fix failure to cleanup objects in a hidden always loaded sub-level #jira UE-39139 Change 3215568 on 2016/11/30 by Aaron.McLeran UE-39197 Delay node of 0.0 causes crash Change 3215719 on 2016/11/30 by Aaron.McLeran UE-39074 Audio related Client crash experienced on latest live build ++UT+Release-Next-CL-3193528 Change 3215773 on 2016/11/30 by Aaron.McLeran PR #2819 : Fixed typo in SoundWave.h Change 3215828 on 2016/11/30 by James.Golding PR #2900: fixed a former change that overlooked the 2 character difference between 16 and 32. (Contributed by MartinMittringAtOculus) Change 3215831 on 2016/11/30 by James.Golding UE-36688 Add BlendOption (with CustomCurve) to PoseBlendNode Change 3215904 on 2016/11/30 by Marc.Audy Fix significance calculations Change 3215955 on 2016/11/30 by James.Golding UE-36791 Fix scaling of rotated convex elements, by baking element transform into cooked convex data. Change 3215959 on 2016/11/30 by James.Golding Remove LogTemp warning from FAnimBlueprintCompiler::FinishCompilingClass Change 3216057 on 2016/11/30 by Marc.Audy Don't reset expose on spawn properties when in a PIE world #jira UE-36771 Change 3216114 on 2016/11/30 by James.Golding Move SkeletalMeshComponent and SkinnedMeshComponent functions out of SkeletalMesh.cpp into correct cpp files Change 3216144 on 2016/11/30 by Jon.Nabozny Fix FConstraintInstance scaling issues in FSkeletalMeshComponent::InitArticulated. InitArticulated uses the default Constraint Template from the Physics Asset a skeletal mesh is associated with. This caused issues if a skeletal mesh had bone scales that differed from those in the physics asset. #jira UE-38434 Change 3216148 on 2016/11/30 by Jon.Nabozny Create test map and asset for Skeletal Mesh Component Scaling and Skeletal Mesh Uniform Import Scaling. Change 3216160 on 2016/11/30 by Aaron.McLeran Fixing a memory leak in concurrency management Change 3216164 on 2016/11/30 by James.Golding Move SkeletalMeshActor code into its own cpp file Fix CIS for SkeletalMeshComponent.cpp Change 3216371 on 2016/11/30 by dan.reynolds AEOverview Update Minor tweaks Completed Sound Concurrency Rule Test Maps Added additional test files Change 3216509 on 2016/11/30 by Marc.Audy Fix missing include Change 3216510 on 2016/11/30 by Marc.Audy Code cleanup Change 3216723 on 2016/12/01 by Jurre.deBaare When clearing a blend sample animation the animation will try and blend to the ref pose #fix do not delete sample when animation == nullptr but mark it as invalid, it then will be rendered in red on the grid and discarded during triangle/line generation #fix indice mapping for 2d blend spaces was incorrect before (luckily never caused an error) #misc weird whitespace changes #jira UE-39078 Change 3216745 on 2016/12/01 by Jurre.deBaare - Blend space triangulation was incorrect in some cases, due to refactor some data was not initialised. - UDN user was hitting a check within the triangle flipping behaviour #fix Revisited the conditions to determine whether or not a point lies within a triangles circumcircle #fix In case we cannot flip the current triangle we skip it and move onto the next one instead of putting in a hard check #misc refactored triangle flipping code to make it smaller (more readible) Change 3216903 on 2016/12/01 by mason.seay Imported mesh for quick test Change 3216904 on 2016/12/01 by Jurre.deBaare CIS Fix #fix replaced condition by both non-editor as editor valid one Change 3216998 on 2016/12/01 by Lukasz.Furman fixed AI slowing down on ramps due to 3D input vector being constrained by movement component #jira UE-39233 #2998 Change 3217012 on 2016/12/01 by Lina.Halper Checking in James' fix on drag/drop to replace assets #code review: James.Golding #jira: UE-39150 Change 3217031 on 2016/12/01 by james.cobbett Updating Pose Snapshot Assets. Again. Change 3217033 on 2016/12/01 by Martin.Wilson Update bounds on all skel meshes when physics asset is changed #jira UE-38572 Change 3217181 on 2016/12/01 by Martin.Wilson Fix imported animations containing a black thumbnail #jira UE-36559 Change 3217183 on 2016/12/01 by Martin.Wilson Add some extra debugging code for future animation compression / ddc issues Change 3217184 on 2016/12/01 by james.cobbett Fixing a test asset by checking a check box. Sigh. Change 3217216 on 2016/12/01 by Martin.Wilson Undo part of CL 3217183. Will need to add this back differently. Change 3217274 on 2016/12/01 by Marc.Audy When serializing in an enum tagged property follow redirects #jira UE-39215 Change 3217419 on 2016/12/01 by james.cobbett Changes to test assets for more Pose Snapshot tests Change 3217449 on 2016/12/01 by Aaron.McLeran Adding new audio setting to disable EQ and reverb. Hooked up to XAudio2 (for now). Change 3217513 on 2016/12/01 by Marc.Audy Improve bWantsBeginPlay deprecation message Change 3217620 on 2016/12/01 by mason.seay Updated test assets for HLOD Change 3217872 on 2016/12/01 by Aaron.McLeran UEFW-113 Adding master reverb to audio mixer - Added new submix editor to create new submixes - Created new default master submixes for reverb and EQ and master submixes - Fixed a number of minor issues found in auido mixer while working on feature Change 3218053 on 2016/12/01 by Ori.Cohen Added mass debug rendering #JIRA UE-36608 Change 3218143 on 2016/12/01 by Aaron.McLeran Fixing up reverb to support multi-channel (5.1 and 7.1) configurations. - Added default reverb send amount Change 3218440 on 2016/12/01 by Zak.Middleton #ue4 - Made some static FNames const. Change 3218715 on 2016/12/02 by james.cobbett Fixed bug in test asset. Change 3218836 on 2016/12/02 by james.cobbett Fixing up test asset Change 3218884 on 2016/12/02 by james.cobbett Moar test asset changes Change 3218943 on 2016/12/02 by Ori.Cohen Make sure welded bodies include the center of mass offset. Note this also changes the COM nudge to be world space instead of local space #JIRA UE-35184 Change 3218955 on 2016/12/02 by Marc.Audy Fix initialization order issues Remove monolithic includes Change signature to pass string by const ref Change 3219149 on 2016/12/02 by Ori.Cohen Fix SetCollisionObjectType not working on skeletal mesh components #JIRA UE-37821 Change 3219162 on 2016/12/02 by Martin.Wilson Fix compile error when blend space on aim offset nodes is exposed as pin #jira UE-39285 Change 3219198 on 2016/12/02 by Marc.Audy UEnum::FindValue/IndexByName will now correctly follow redirects #jira UE-39215 Change 3219340 on 2016/12/02 by Zak.Middleton #ue4 - Optimized and cleaned up some Actor methods related to location and rotation. - Inlined GetActorForwardVector(), GetActorUpVector(), GetActorRightVector(). Wrapped them to simply call the methods on USceneComponent rather than using a different approach to computing these vectors. - Inlined blueprint versions: K2_GetActorLocation(), K2_GetActorRotation(), K2_GetRootComponent(). - Cleaned up template methods that are used to delay compilation of USceneComponent calls to make them private and prefix "Template" to their names so they don't show up in autocomplete for calls to the public methods. Change 3219482 on 2016/12/02 by Ori.Cohen Fix crash when double deleting a clothing actor due to destroying USkeletalMesh before USkeletalMeshComponent. #JIRA UE-39172 Change 3219676 on 2016/12/02 by Martin.Wilson Make clearer that ref pose is from skeleton Change 3219687 on 2016/12/02 by Aaron.McLeran Supporting multi-channel reverb with automatic downmixing of input to stereo Change 3219688 on 2016/12/02 by Martin.Wilson Fix crash when remapping additive animations after skeleton hierarchy change #jira UE-39040 Change 3219699 on 2016/12/02 by Zak.Middleton #ue4 - Fix template's use of old GetActorRotation() function. Change 3219969 on 2016/12/02 by Ben.Zeigler #jira UE-24800 Disable replicatied movement updates for actors that are welded to something else, to avoid them fighting with the welded parent's replication Modified from shelve Zak.Middleton made of PR #1885, after some more testing Change 3220010 on 2016/12/02 by Aaron.McLeran Fixing up sound class editor Change 3220013 on 2016/12/02 by Aaron.McLeran Deleting monolithic file Change 3220249 on 2016/12/02 by Aaron.McLeran Changing reverb settings parameter thread sync method - Switching to a simple ring buffer rather than using a crit sect Change 3220251 on 2016/12/02 by Aaron.McLeran Removing hard-coded audio mixer module name for the case when using -audiomixer argument, -added new entry to ini file that allows you to specify the audio mixer module name used for the platform. Change 3221118 on 2016/12/05 by Jurre.deBaare Back out changelist 3220249 to fix CIS Change 3221363 on 2016/12/05 by Martin.Wilson Change slot node category from Blends to Montage Change 3221375 on 2016/12/05 by Jon.Nabozny Change AGameModeBase::GetGameSessionClass to return GameSessionClass when set. #jira UE-39325 Change 3221402 on 2016/12/05 by Jon.Nabozny Add sanitization code around PhsyX flags and refactor the ways flags are managed through a single code path. #jira UE-33562 Change 3221441 on 2016/12/05 by Thomas.Sarkanen Fixed crash when reimporting a mesh when a different animation was open #jira UE-39281 - Editor crashes when reimporting a skeletal mesh after enabling recalculate tangents Change 3221473 on 2016/12/05 by Marc.Audy Get rid of auto. Use GetComponents directly instead of copying in to temporary arrays Change 3221584 on 2016/12/05 by Jon.Nabozny Fix CIS for Mac builds from CL-3221375 Change 3221631 on 2016/12/05 by Martin.Wilson Possible fix for rare marker sync crash on live servers #jira UE-39235 #test ai match, animation seemed fine, no crashes Change 3221660 on 2016/12/05 by mason.seay Resubmitting to add Viewport Bookmark Change 3221683 on 2016/12/05 by Mieszko.Zielinski Temp (but decent) fix to ARecastNavMesh::GetRandomPointInNavigableRadius sometimes retrieving invalid locations even if there's a valid piece of navmesh in the area #UE4 #jira UE-30355 Change 3221750 on 2016/12/05 by Jon.Nabozny Real CIS fix. Change 3221917 on 2016/12/05 by Jon.Nabozny Fix CIS for real this time. Change 3222370 on 2016/12/05 by mason.seay Start of Gameplay Tag testmap Change 3222396 on 2016/12/05 by Aaron.McLeran UEFW-44 Implementing EQ master submix effect for audio mixer - New thread safe param setting temlate class (for setting EQ and Reverb params) - Hook up reverb submix effect to source voices - Implementation of FBiquad for biquad filter coefficients and audioprocessing - Implementation of Filter class which hold FBiquad instance per channel, computes coefficents once - Implementation of equalizer class which is a serial bank of filters set to ParametricEQ filter type Change 3222425 on 2016/12/05 by Aaron.McLeran Checking in missing files Change 3222429 on 2016/12/05 by Aaron.McLeran Last missing file! Change 3222783 on 2016/12/05 by Jon.Nabozny Update SkelMeshScaling map. Change 3223173 on 2016/12/06 by Martin.Wilson Fix crash in thumbnail rendering when creating a new montage #jira UE-39352 Change 3223179 on 2016/12/06 by Marc.Audy auto/NULL cleanup Change 3223329 on 2016/12/06 by Marc.Audy Fix (hard to explain) memory corruption #jira UE-39366 Change 3223334 on 2016/12/06 by Jon.Nabozny Add HasBeenInitialized check inside AActor::InitializeComponents Change 3223340 on 2016/12/06 by Jon.Nabozny Refactor SkeletalMesh constraint scaling fixes. Add a check on bodies to ensure they are valid. #jira UE-39238 Change 3223372 on 2016/12/06 by Marc.Audy Probably fix HTML5 CIS failure Change 3223511 on 2016/12/06 by Jon.Nabozny Fix Mac CIS shadow warning Change 3223541 on 2016/12/06 by Lukasz.Furman fixed missing NavCollision data in static meshes #jira UE-39367 Change 3223672 on 2016/12/06 by Ben.Zeigler #jira UE-39394 Fix GameplayTagContainerCustomization to work like GameplayTagCustomization as a popup instead of a window, this fixes the references button Remove unnecessary code from both customizations Change 3223751 on 2016/12/06 by Marc.Audy Properly remove components from their owner when manipulating through editinlinenew properties #jira UE-30548 Change 3223831 on 2016/12/06 by Ben.Zeigler #jira UE-39293 Don't show non-working tag operations when ini tag editing is not enabled #jira UE-39344 Improve feedback messages when deleting explicit tags that have other explicit tag children Don't allow deleting a leaf explicit tag whose implicit parent tags are still referenced and it is the only thing keeping them alive Add Tag Source to tooltip in management mode Fix RequestGameplayTagChildrenInDictionary to work properly Change 3223862 on 2016/12/06 by Marc.Audy Hide deprecated attach functions for all games not just Paragon Change 3224003 on 2016/12/06 by Marc.Audy Put behavior of player camera back to how it was prior to Ansel plugin support changes. Make photography only work a different way. #jira UE-39207 Change 3224602 on 2016/12/07 by Jurre.deBaare Crash on creating LODs with Medic #fix Added clamp for UVs -1024 to 1024 #jira UE-37726 Change 3224604 on 2016/12/07 by Jurre.deBaare Fix for incorrect normal calculation in certain circumstances #fix Make sure we propagate the matrices to samples after we (re)calculated normals #fix Conditionally swap/inverse the vertex data buffers instead of always #fix Set preview mesh for alembic import animation sequences #misc removed commented out code and added debug code Change 3224609 on 2016/12/07 by Jurre.deBaare Alembic Import Issues (skeletal) w. UVs and smoothing groups #fix Changed the way we populate smoothing group indices for alembic caches #misc removed commented out code, set base preview pose for alembic imported skeletal meshes / anim sequences #jira UE-36412 Change 3224783 on 2016/12/07 by James.Golding Support per-instance skeletal mesh vertex color override Change 3224784 on 2016/12/07 by James.Golding Add skelmesh vert color override map. Fix my vert color material to work on skel mesh. Change 3225131 on 2016/12/07 by Jurre.deBaare Crash when baking matrix animation when importing an alembic file as skeletal #fix condition whether or not to apply matrices had not been moved over in previous change #jira UE-39439 Change 3225491 on 2016/12/07 by Lina.Halper - Morphtarget fix on the first frame #jira: UE-37702 Change 3225597 on 2016/12/07 by mason.seay Updated materials on meshes to ones that don't have physical materials, also rebuilt lighting Change 3225758 on 2016/12/07 by Aaron.McLeran UE-39421 Fix for sound class graph bug Change 3225957 on 2016/12/07 by Ben.Zeigler #jira UE-39433 Fix crash with mass debug data Change 3225967 on 2016/12/07 by Lina.Halper Fix not removing link up cache when removed. #jira: UE-33738 Change 3225990 on 2016/12/07 by Ben.Zeigler #jira OR-32975 Sort gameplay tags before saving out modified ini, to help with merge issues Change 3226123 on 2016/12/07 by Aaron.McLeran Fix for sound class asset creation from within the sound class graph Change 3226165 on 2016/12/07 by mason.seay Replaced skelmesh gun with static mesh cube Change 3226336 on 2016/12/07 by Aaron.McLeran Fixing up sound class replacement code. If you delete a sound class but replace with another, now it properly replaces sound classes in the sound class graphs without totally destroying them Change 3226701 on 2016/12/08 by Thomas.Sarkanen Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ CL 3226613 Change 3226710 on 2016/12/08 by Jurre.deBaare Fix for alembic import crash #misc update num mesh samples and take into account user set start frame in case of skipping preroll frames Change 3226834 on 2016/12/08 by Jurre.deBaare Fix for incorrect matrix samples being applied during Alembic cache importing #fix Change way we loop through samples and determine correct matrix and mesh sample indices Change 3227330 on 2016/12/08 by Jurre.deBaare Temporary fix for animBP compilation error, underlying issue is causing the skeleton to not be fully loaded when we are validating the animation node. This makes the socket name check fail and consequently output a compilation error #UE-39499 #fix Ensure that the skeleton is loaded by checking for RF_NeedPostLoad #misc corrected socket name output, removed unnecessary nullptr check Change 3227575 on 2016/12/08 by Marc.Audy Merging //UE4/Dev-Main to Dev-Framework (//UE4/Dev-Framework) @ 3227387 Change 3227602 on 2016/12/08 by Marc.Audy Copyright 2016 to 2017 updates for new Framework files [CL 3227721 by Marc Audy in Main branch]
2016-12-08 16:58:18 -05:00
if (bHasConvexGeometry || BodySetup == NULL || BodySetupGuid == BodySetup->BodySetupGuid)
{
return;
}
LLM_SCOPE_BYNAME(TEXT("NavigationCollision"));
BodySetupGuid = BodySetup->BodySetupGuid;
// Make sure all are cleared before we start
ClearCollision();
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
// Find or create cooked navcollision data
FByteBulkData* FormatData = GetCookedData(NAVCOLLISION_FORMAT);
if (!bForceGeometryRebuild && FormatData)
{
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
// if it's not being already processed
if (FormatData->IsLocked() == false)
{
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
// Create physics objects
FNavCollisionDataReader CookedDataReader(*FormatData, TriMeshCollision, ConvexCollision, ConvexShapeIndices, Bounds);
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
bHasConvexGeometry = true;
}
}
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
else if (FPlatformProperties::RequiresCookedData() == false)
{
GatherCollision();
}
}
FBox UNavCollision::GetBounds() const
{
return Bounds;
}
void UNavCollision::GatherCollision()
{
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
ClearCollision();
UStaticMesh* StaticMeshOuter = Cast<UStaticMesh>(GetOuter());
if (bGatherConvexGeometry && StaticMeshOuter && StaticMeshOuter->GetBodySetup())
{
NavigationHelper::GatherCollision(StaticMeshOuter->GetBodySetup(), this);
}
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
FKAggregateGeom SimpleGeom;
for (int32 Idx = 0; Idx < BoxCollision.Num(); Idx++)
{
const FNavCollisionBox& BoxInfo = BoxCollision[Idx];
const float X = FloatCastChecked<float>(BoxInfo.Extent.X * 2.0, UE::LWC::DefaultFloatPrecision);
const float Y = FloatCastChecked<float>(BoxInfo.Extent.Y * 2.0, UE::LWC::DefaultFloatPrecision);
const float Z = FloatCastChecked<float>(BoxInfo.Extent.Z * 2.0, UE::LWC::DefaultFloatPrecision);
FKBoxElem BoxElem(X, Y, Z);
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
BoxElem.SetTransform(FTransform(BoxInfo.Offset));
SimpleGeom.BoxElems.Add(BoxElem);
}
// not really a cylinder, but should be close enough
for (int32 Idx = 0; Idx < CylinderCollision.Num(); Idx++)
{
const FNavCollisionCylinder& CylinderInfo = CylinderCollision[Idx];
FKSphylElem SphylElem(CylinderInfo.Radius, CylinderInfo.Height);
SphylElem.SetTransform(FTransform(CylinderInfo.Offset + FVector(0.f, 0.f, 0.5f*CylinderInfo.Height)));
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
SimpleGeom.SphylElems.Add(SphylElem);
}
if (SimpleGeom.GetElementCount())
{
NavigationHelper::GatherCollision(SimpleGeom, *this);
}
bHasConvexGeometry = (TriMeshCollision.VertexBuffer.Num() > 0) || (ConvexCollision.VertexBuffer.Num() > 0);
}
void UNavCollision::ClearCollision()
{
TriMeshCollision.VertexBuffer.Reset();
TriMeshCollision.IndexBuffer.Reset();
ConvexCollision.VertexBuffer.Reset();
ConvexCollision.IndexBuffer.Reset();
ConvexShapeIndices.Reset();
Bounds = FBox(ForceInitToZero);
bHasConvexGeometry = false;
}
void UNavCollision::GetNavigationModifier(FCompositeNavModifier& Modifier, const FTransform& LocalToWorld)
{
QUICK_SCOPE_CYCLE_COUNTER(STAT_NavCollision_GetNavigationModifier);
const TSubclassOf<UNavArea> UseAreaClass = AreaClass ? AreaClass : (const TSubclassOf<UNavArea>)(FNavigationSystem::GetDefaultObstacleArea());
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
// rebuild collision data if needed
if (!bHasConvexGeometry)
{
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
GatherCollision();
}
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
const int32 NumModifiers = (TriMeshCollision.VertexBuffer.Num() ? 1 : 0) + ConvexShapeIndices.Num();
Modifier.ReserveForAdditionalAreas(NumModifiers);
auto AddModFunc = [&](const TNavStatArray<FVector>& VertexBuffer, const int32 FirstVertIndex, const int32 LastVertIndex)
{
FAreaNavModifier AreaMod;
if (Modifier.IsPerInstanceModifier())
{
AreaMod.InitializePerInstanceConvex(VertexBuffer, FirstVertIndex, LastVertIndex, UseAreaClass);
}
else
{
AreaMod.InitializeConvex(VertexBuffer, FirstVertIndex, LastVertIndex, LocalToWorld, UseAreaClass);
}
AreaMod.SetIncludeAgentHeight(true);
Modifier.Add(AreaMod);
};
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
int32 LastVertIndex = 0;
for (int32 Idx = 0; Idx < ConvexShapeIndices.Num(); Idx++)
{
const int32 FirstVertIndex = LastVertIndex;
LastVertIndex = ConvexShapeIndices.IsValidIndex(Idx + 1) ? ConvexShapeIndices[Idx + 1] : ConvexCollision.VertexBuffer.Num();
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3807299) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3528776 by Yannick.Lange Allow thumbnails to be captured from a viewport always. #jira UE-45392 Change 3564359 by Yannick.Lange Back out part of changelist 3528776: Revert allowing thumbnails to be captured from a viewport to fix UE-47827 & UE-47785. #jira UE-47785, UE-47827 Change 3740671 by Matt.Kuhlenschmidt Make the font editor canvas respect dpi scale Change 3740810 by Josh.Engebretson PR #4138: Log GenerateProjectFiles to file when using UVS (Contributed by projectgheist) #jira UE-51358 Change 3740939 by Cody.Albert Fixing some #ifdefs that should be #ifs Change 3741089 by Alexis.Matte Make sure bImportBoneTracks is set to true when importing into level #jira UE-51999 Change 3741101 by Alexis.Matte Fix the import material search #jira UE-51857 Change 3741690 by Jamie.Dale Guard against an invalid index in SLocalizationCommandletExecutor::Tick #jira UE-52067 Change 3741710 by Jamie.Dale Made a static variable also const Change 3741724 by Michael.Dupuis Added missing shader cache Change 3742037 by Lauren.Ridge Details panels can now "own" a color picker so a different details panel refreshing doesn't close it. Also fixed refreshing state of the graph after changing texture or color parameter values Change 3742250 by Matt.Kuhlenschmidt PR #4185: Output Log Filter tooltip shows %s instead of category. (Contributed by LordNed) Change 3742308 by Lauren.Ridge Adding axis input to the material editor's viewport client Change 3742380 by Matt.Kuhlenschmidt USD importer improvements - USD now stores source file information for reimports - Fixed bug where no geometry would be imported if an exporter had set a time code even without animated data - Prevent a crash if a mesh doesnt have enough valid data to be imported Change 3742536 by Matt.Kuhlenschmidt Remove usd wrapper test project Change 3743564 by Alexis.Matte Fix skeletal mesh screen size auto set value when importing a LOD #test none #jira UE-52100 Change 3743582 by Lauren.Ridge Fixing non-desktop compiles Change 3743598 by Lauren.Ridge Fixing shadowed variable by renaming the global color picker weak ptr variable. Change 3743636 by Lauren.Ridge Creating a new parameter immediately allows naming Change 3743855 by Michael.Dupuis Added missing shader from cache Change 3744277 by Lauren.Ridge Don't show empty Global group if it only contained the material layer param. Change 3744330 by Lauren.Ridge Clarifying "no parameter" text Change 3744529 by Lauren.Ridge Making Save to Child and Save To Sibling buttons work for material layer params, show on material layer param panel Change 3744668 by Chris.Bunner Added shared layer input collection asset, a list of float/texture redirectors that allow setting globally in a material graph then retrieving within layer/blend graphs. Added output for number of unique shaders generated by a particular material instance. Show instruction counts when working on a material layer. Relaxed restrictions on material layers, base MA input is now optional. #jira UETOOL-1271, UETOOL-1278, UETOOL-1279 Change 3744669 by Chris.Bunner Added automated test for material layers, layer/blend instances and shared inputs. Change 3744754 by Laz.Matech Adding localization data to QAGame for the Realtime Preview localization test. #jira none Change 3744860 by Michael.Dupuis #jira UE-52049 : Do not update random stream in most case, only when adding new instances, or filling from built data Change 3744965 by Chris.Bunner Rebuilt lighting in automated test map and updated reflection capture screenshot. Change 3746015 by Michael.Dupuis #jira UE-52090: Added missing shader for forward rendering Change 3746038 by Michael.Dupuis #jira UE-51494: Make sure index is valid for this instance as instances from template and instance could mismatch due to in level changes Change 3746076 by Michael.Dupuis Removed unused code Change 3746998 by Tim.Gautier QAGame: - Renamed UMG_RealtimePreview > UMG_InEditorPreview - Moved UMG_InEditorPreview into UMG > Localization, setting up for future Localization tests Change 3747206 by Arciel.Rekman Linux: make UI scale more coarse to prevent unnecessary scaling (UE-52086). - Monitors whose physical dimensions fall in range of 80-110 DPI should still have scale=1.0. (Edigrating CL 3740942 from Release-4.18 to Dev-Editor) Change 3747211 by Arciel.Rekman Make failure to launch SCW more apparent to the user (UE-47263). - Fixes frequent crash on Linux. (Merging 3747070 from Release-4.18 to Dev-Editor) Change 3747726 by Tim.Gautier QAGame: Resubmitting updated Loc files Change 3747872 by Tim.Gautier QAGame: Resubmitting compiled Loc assets Change 3748118 by Lauren.Ridge Adding help text to the material layers preview tab Change 3748398 by Lauren.Ridge Fixing tooltips for the material layer read-only preview Change 3748565 by Arciel.Rekman Linux: fix RHIs settings being wrong when removed via project properties (UE-51203). - This was a deeper issue with config system than just Linux RHIs. - This is a better fix than one submitted to 4.18 branch in CL 3747086. Change 3749441 by Matt.Kuhlenschmidt PR #4201: Fix a typo in a comment. (Contributed by dneelyep) Change 3749442 by Matt.Kuhlenschmidt PR #4195: Incorrect specifier used for FText::Format (Contributed by projectgheist) Change 3749496 by Matt.Kuhlenschmidt Fix static analysis Change 3749805 by Lauren.Ridge Fixing reset to default on MaterialLayerParam in base material Change 3749838 by Lauren.Ridge Also correctly resetting names and layer states Change 3750442 by Mieszko.Zielinski Added a safety check which addresses the crash #UE4 Note that this is a temp fix. A proper fix is making sure ConvexShapeIndices doesn't contain any duplicates and will be inplemented in Dev-Framework. #jira UE-52123 Change 3752266 by Arciel.Rekman OpenGL: remove PLATFORM_WINDOWS exceptions. - Discrepancy in behavior between Windows and Linux OpenGL is unhelpful for bug reproducibility. - VAB bug should have been fixed long ago (on both platforms). Change 3752929 by Arciel.Rekman Linux: avoid crashing on unknown drivers. - See https://answers.unrealengine.com/questions/724100/crashes-on-startup-after-first-run.html - Checks in IsDeviceIntel() and such fail if the drivers were not detected. Change 3753254 by Michael.Dupuis Added missing shader for shader cache Change 3753426 by Michael.Dupuis #jira UE-5751: Added the possibility to change material instance exposed params at runtime using a MID for texture, vector and scalar for 1 component or all components Change 3753440 by Alexis.Matte Fix fbx scene importer morph target import crash #jira UE-52255 Change 3753457 by Michael.Dupuis build fix Change 3753700 by Chris.Bunner Make GetSharedInput preview fallback always available in editor as this should handle previews, thumbnails and other editor-only cases. Refactor to remove duplicate code in material translator. Material layer expressions are required for client load, fixes cooked builds using layer instances in the base material layer stack. Change 3754760 by Chris.Bunner Tidying up EngineTest/ShaderModels map. Change 3754765 by Arciel.Rekman Avoid placing tooltip windows under the cursor (UE-12288). - Fixes inability to use some corners of the screen on Linux (the tooltips there aren't click-through). Change 3754788 by Matt.Kuhlenschmidt Fix details panel crash after compiling blueprints that have edit conditon properties Change 3754933 by Christina.TempelaarL Fixed typo in heightLerp (transistion->transition). #jira UE-46736 Change 3754946 by Cody.Albert Update loading movie code to properly calculate delta time when throttled at 60fps Change 3755059 by Jamie.Dale Fixed game preview language not updating in realtime while PIE was enabled #jira UE-52209 Change 3755130 by Jamie.Dale Fixed game preview language not updating from native when switching between preview languages #jira UE-52348 Change 3755664 by Michael.Dupuis Fixed compile warning Change 3755714 by Yannick.Lange Always allow capturing thumbnails from viewport. This also hides the thumbnail editing UI when a thumbnail was captured from a viewport. Change 3755944 by Alexis.Matte Fix crash when importing morph target with "built in" tangent option #jira UE-52319 Change 3756109 by Christina.TempelaarL fixed FBX importer Import Textures tooltip, UMaterial -> Material in tooltip text #jira UE-48389 Change 3756169 by Jamie.Dale Added plural form pattern to SContentBrowser::GetPathText Change 3756493 by Laz.Matech Updating Localization content to further test InEditor Preview Language in UMG #jira none Change 3758336 by Alexis.Matte Fix a crash when importing morph target there was a unsync between some buffer depending on the import options #jira UE-52319 Change 3758947 by Jamie.Dale Fixed cursor position regression in search boxes This was caused by a call to SetText that was added in CL# 3627864 This caused the text to update as it was changed, which made the cursor jump to the end of the text and made it impossible to type in the middle of a search term. This was done as a bound FText value had been passed to the InitalText of SSearchBox, which made the text resolution behave strangely. InitalText should always be a value, and SSearchBox now resolves any bindings during its constructor. #jira UE-48874 Change 3759000 by Laz.Matech Submitting the .PO file for CL 3756493 #jira none Change 3759480 by Matt.Kuhlenschmidt Safe guard against brush details crash #jira UE-52278 Change 3759665 by Matt.Kuhlenschmidt PR #4214: UE-52249: Use valid PreviewShadowsIndicatorMaterialName (Contributed by projectgheist) Change 3761211 by Matt.Kuhlenschmidt Remove the restriction that a level must be writable to be locked/unlocked. Fixed duplicate icons being used by the level browser Change 3761304 by Chris.Bunner MaterialAttributeLayers graph node BaseMA input is no longer required. Note: Requires "Use Preview Value" set to true on inputs. Change 3761307 by Chris.Bunner New material layers and blends will have "Use Preview Value" set to true by default to avoid the need for connected inputs - Missed file on previous commit. Change 3761357 by Chris.Bunner Renamed material shared input enum. Change 3761419 by Chris.Bunner Updating material layers automated test assets after recent changes. Reverted some naming changes so existing screenshot tests can be reused. Change 3762058 by tim.gautier QAGame: Adding Material Layer assets for testing (Content/Materials/LayerFunction) Change 3763328 by Matt.Kuhlenschmidt Fix Slate warning at editor startup Change 3763354 by Alexis.Matte Fix skeletal mesh material assign when reducing a LOD that was import from a file using simplygon reduction #jira UE-52505 Change 3763501 by Matt.Kuhlenschmidt Prevent shared asset thumbnail pools from having their resources forcefully released when they are in use. ReleaseResources is now private and only called on destruction of the pool Change 3763574 by Matt.Kuhlenschmidt Fix slate material box brushes not being keyed off image size #jira UE-40219 Change 3763678 by Jamie.Dale Disable realtime level editor viewport if running under remote desktop This makes the main editor window much more responsive by default under remote desktop Change 3763679 by Jamie.Dale Added asset caching metrics for the loc gather Change 3763693 by Matt.Kuhlenschmidt Changed the code that activates the actor details tab when selection changes to a flash. There are simply too many things that change the selection and steal focus away from a tab being used #jira UE-51754 Change 3763826 by Michael.Dupuis Fixed Fortnite cooking crash Change 3763864 by Harrison.Moore Adding New Default 'LayerBlend' assets Change 3764028 by Christina.TempelaarL #jira UE-47695 Auto LOD bug Moved the sections dropdown to the LOD Picker category and modified Custom cb behavior, based on suggestions from charlie. Change 3764031 by Christina.TempelaarL #jira UE-47695 Auto LOD in StaticMeshViewer moved LOD combo widget to LOD picker category and hide custom checkboxes until custom checked. Change 3764076 by tim.gautier QAGame: Submitting UMG_Multitouch_test for initial Multitouch testing Change 3764263 by Matt.Kuhlenschmidt Fix the floor mesh thumbnail Change 3764284 by Chris.Bunner Removing some asserts for cases that can validly fail and are already handled. Change 3764372 by Matt.Kuhlenschmidt PR #4196: Show edit icons in editor (Contributed by projectgheist) Change 3764388 by Chris.Bunner Fixing logic for material, function and instance updating active materials and instances and their editors. Change 3764674 by Harrison.Moore test materials added, Blend updates Change 3764681 by Harrison.Moore Adding HMtest map Change 3766238 by Chris.Bunner Material layer callers need to let their internal material function calls update their inputs/outputs. Change 3766556 by Jamie.Dale Fixed crashes that could happen if some of the data table panels were closed We now always create the underlying widgets, even if they're currently hidden from view #jira UE-52552 Change 3767753 by Chris.Bunner When rebuilding a material function instance editor we must re-create and re-apply the proxies as the expressions have likely changed. Take care to maintain local parameter changes as these have not been saved yet. Change 3768719 by Michael.Dupuis #jira UE-52521: Prevent possible crash if a segment have no point or invalid point Change 3769157 by Jamie.Dale Fixed incorrect text selection if selecting via double click beyond the bounds of the line It would previously select the second to last word, rather than the last word #jira UE-51609 Change 3769159 by Harrison.Moore Belica Test update, New layer blends updated with texture type fix. Change 3769205 by Jamie.Dale Fixed Windows file save dialog not appending the correct extension when there were multiple options available #jira UE-52180 Change 3769220 by Harrison.Moore Layer blend tweaks Change 3769292 by Jamie.Dale Removing redundant code Applying the correct package ID, only to then strip it off again is rather pointless Change 3769479 by Arciel.Rekman UBT: Use response files for compiler when compiling for Linux. - Some command lines are too long when cross-compiling on Windows. Change 3769920 by Arciel.Rekman Linux: convert yet another initialization crash to a user-friendly message (UE-52457). #jira UE-52457 Change 3771055 by Alexis.Matte Make sure we set the Used by morph target material flag to material use by the morphtarget instead of all skinned mesh component Use the morph vertex factory only for section that has active morph target #jira UE-51483 Change 3771135 by Michael.Dupuis Fixed fortnite cooking Change 3773054 by Yannick.Lange Avoid loading viewport interaction assets when starting the editor. Change 3774184 by Arciel.Rekman Linux: disabled some gdb visualizers until the issue is fixed. - CL 3773942 by CengizT. Change 3774303 by Matt.Kuhlenschmidt Pull requests to fix various typos Change 3774305 by Matt.Kuhlenschmidt PR #4237: Visual Studio Repeatedly Opens (UE-51608) (Contributed by LordNed) #jira UE-51608 Change 3774701 by Arciel.Rekman OpenGL: fix ARB callback errors when hitting Build Lighting. - Merged from 4.18 shelf. Change 3775812 by Matt.Kuhlenschmidt Fix One-off crash undo-ing while working with Material Params / Material Functions #jira UE-52680 Change 3775849 by Matt.Kuhlenschmidt More info for UE-52610 Change 3775850 by Matt.Kuhlenschmidt Guard against mesh paint crashes #jira UE-52618 Change 3775904 by Matt.Kuhlenschmidt Added logging to track down window shutdown issues Change 3775913 by Matt.Kuhlenschmidt Pull requests for typos #jira UE-52751, UE-52748 Change 3776676 by Jamie.Dale Fixed being able to insert tabs into spin boxes with units #jira UE-52776 Change 3777006 by Michael.Trepka Process Mac windowDidBecomeMain and windowDidResignMain notifications immediately instead of deferring them. This solves issues with Slate code that closes and immediately opens new menu windows. Previously closing a window would schedule menu parent's activation event that could be processed after another menu's creation, making it immediately disappear. #jira UE-52145 Change 3777170 by Arciel.Rekman Linux: use Xft.dpi (most desktop environments expose their scale through that) as a DPI value (UE-52086, UE-52766). - Change by Brandon.Schaefer. - Limitation: no per-monitor DPI. (Edigrating CL 3776509 //UE4/Release-4.18/... to //UE4/Dev-Editor/...) Change 3777292 by Arciel.Rekman Linux: fix symbol collision causing problems with AMD drivers (UE-51843). - We cannot have elf_end() hidden, because libcuda.so calls elf_end from libnvidia-fatbinaryloader.so and this breaks linking monolithic binaries ("hidden symbol referenced in DSO"). - We cannot have elf_end() visible, because of a name collision with a different libelf used by AMD drivers. - The only possible workaround is to have elf_end() renamed. (Edigrating CL 3777242 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...) Change 3777686 by Joe.Conley Blueprint editor variable type tooltips: fix case mismatch that was preventing type name to be displayed properly in soft object/class reference tooltips. Change 3778180 by Jamie.Dale Avoid a crash if a regex pattern or matcher outlive ICU during shutdown #jira UE-52770 Change 3778182 by Jamie.Dale Avoid a crash if a break iterator outlives ICU during shutdown Change 3778368 by Jamie.Dale Added missing pragma once Change 3778560 by Matt.Kuhlenschmidt Prevent non-shared DDC notification from triggering for epic internal builds Change 3778709 by Lauren.Ridge Copying 4.18.2 array reordering propagating to children fix (originally 3778547) Change 3779205 by Lauren.Ridge Duplicating 3776649 to fix a crash on compile due to partial GC of a widget. #jira UE-52260 Change 3779217 by Brandon.Schaefer GitHub #3678 Fix Setup.sh handling of special characters in PNG path #jira UE-46103 Change 3779341 by Brandon.Schaefer GitHub #3012 Use elemtry OS versions to set the ubuntu versions for depencies #jira UE-39364 Change 3780274 by Joe.Conley DataTables: Add documentation tooltips showing type information to header columns Change 3780840 by Alexis.Matte Do a re-import when user re-import LOD 0 Prevent importing more then MAX_SKELETAL_MESH_LODS #jira UE-52373 Change 3781067 by Arciel.Rekman Linux: fix OSSSteam cross-compilation (and CIS). - Broken by previous change that put compile-time arguments into response file and bulk-replaced \ with /, which affected things like Definitions.Add("STEAM_SDK_VER_PATH=TEXT(\"Steam" + SteamVersion + "\")"); Change 3781110 by Christina.TempelaarL #jira UE-47695 moved Static Mesh Editor LOD menu from tools to viewport tool bar Change 3781531 by Christina.TempelaarL #jira UE-47695 added LOD menu to Static Mesh Editor viewport Change 3781663 by Alexis.Matte Fix for cancel export fbx when previewing animation sequence export #jira UE-49743 Change 3782007 by Jamie.Dale Improved the ability to lockdown available game languages In addition to the previous "DisabledCultures" array, you can now add an array of "EnabledCultures" (using the same per-build config filters) to explicitly list the cultures that are allowed to be used in your build (if the list is empty, then everything is allowed unless otherwise disabled). This also stops the game from attempting to fallback to the native language if the native language has been disabled (we will fallback to the first available language instead). Change 3782122 by Jordan.Walker test assets for material layers Change 3782131 by Joe.Graf Added support for IOS and TVOS targets when generating CMake files on Mac Change 3782218 by Christina.TempelaarL fixing include paths and capitalization causing build errors. Change 3783171 by Michael.Dupuis Added the possibility to override default LOD rules for visible primitive and whole scene shadow casting primitive Added the possibility to store Custom data per view for the frame duration Change 3783172 by Michael.Dupuis #jira UE-35097 : Refactored landscape rendering logic to improve general performance while using new custom data and custom lod feature Exposed many new settings to control component using sub sections rendering, tessellated component, shadow should be include into tessellation, tessellation falloff based on camera location Changed how LOD distribution is done to be in screen size instead of distance. Give the possibility to have a different distribution for LOD0 vs the other one. Change 3783174 by Michael.Dupuis missing file to landscape refactor Change 3783315 by Lauren.Ridge Changing a parameter in the Material Parameter Panel now dirties the material correctly. Changing a layer parameter in the Material Instance Editor now refreshes the details panel as well. Change 3783374 by Chris.Bunner Adding MaterialSharedInputCollection to hidden list when MaterialLayers disabled. Change 3783617 by Chris.Bunner Added a Channel Mask material expression parameter. Wraps up a vector parameter and dot product with a single channel selection interface, internally a regular vector parameter. Fixed GetSharedInput failing to return the preview texture in the Function Instance editor. Change 3783676 by Lauren.Ridge Adding access to a material function instance's parent in the Material Instance Editor Change 3783751 by Michael.Trepka PR #4248: Fixed C++ std in generated Xcode project to match rest of engine (C++14) (Contributed by Bo98) Change 3783971 by Brandon.Schaefer Rename/Move all deploy/Deploy folder/files into AlembicDeploy. Due to case sensitivity on linux, need to maintain the correct case. #jira UE-37631 Change 3783992 by Michael.Dupuis #jira UE-35097: Remove tessellation on editor tools Fixed a case where tessellation multiplier at 0 would cause the component to not be visible Fixed minor tessellation falloff calculation error Change 3784502 by Chris.Bunner Restored missing bool setter. Coding standards fix. Change 3784614 by Arciel.Rekman Linux: better error message when running out of inotify watches (UE-50459). #jira UE-50459 Change 3784620 by Chris.Bunner Updated LayerBlend_TextureMask to use new ChannelMask parameter. Change 3784725 by Lauren.Ridge Fixing groups not sorting correctly Change 3785645 by Chris.Bunner Non-editor compile fix. Change 3785666 by Arciel.Rekman Linux: restore ability to use Wayland instead of X11. - SDL libs recompiled and Wayland version is set to lower one to be compatible with the compositor shipped on Ubuntu 16.04 LTS - Change by Anthony.Bills. Change 3785708 by Arciel.Rekman Linux: implement voice capture using SDL (non-server only) (UE-51298). - Based on pull request #4131 by mkirzinger. Change 3785878 by Arciel.Rekman UBT: add VSCode to default generators on Linux. Change 3786058 by Arciel.Rekman Do not add dependencies on other RHIs for servers (UE-48894). - Pull request #3944 contributed by pfoote. #jira UE-48894 Change 3786845 by Arciel.Rekman Code changes to make gcc support easier (UE-51978). - Contributed by a licensee (pull request #4181 by tomwardio "Collection of fixes to allow UE4 to be compiled by GCC on Linux"). Change 3786871 by Matt.Kuhlenschmidt Fix static analysis Change 3786883 by Matt.Kuhlenschmidt Fix HTML5 Change 3786923 by Matt.Kuhlenschmidt Fix engine layer blend asset referencing game content. This is not allowed #jira UE-52888 Change 3786927 by Brandon.Schaefer Linux: Alembic support #jira: UE-37631 Change 3786994 by Arciel.Rekman Remove support for /-prefixed switches (UE-47429). - They collide with absolute file paths on Mac/Linux and a source of inconsistencies between platforms. #jira UE-47429 Change 3787032 by Michael.Trepka Initial support for building and running Niagara on Mac Change 3787035 by Brandon.Schaefer GitHub #4166 Undef GL entrypoint macros after use #jira UE-51663 Change 3787144 by Lauren.Ridge Fixing material parameter group association resetting after undo #jira UE-52514 Change 3787839 by Jordan.Walker updated engine level layer blends to not include game content switched them to use Chris B's new mask selection node Change 3787967 by Lauren.Ridge Fix for broken layer groups, related crash Change 3787991 by Lauren.Ridge Fixing thumbnails for material function instances, resolving not being able to delete new function instances #jira UE-52967 Change 3788226 by Michael.Trepka Fixed a deadlock when closing Mac CrashReportClient which resulted from changes in CL 3777006 #jira UE-53002 Change 3788557 by Brandon.Schaefer Fix shadow compiler warnings around our includes Change 3789700 by Lauren.Ridge Experimental setting for turning on Material Layers - off by default. Change 3789703 by Jamie.Dale Harden the LocMeta and LocRes loading to prevent loading files that are too new Change 3789706 by Jamie.Dale Added localization ID to the package summary This will allow the localization gatherer to query it without having to load the entire package Change 3789708 by Jamie.Dale Added a way to display and reset the package localization ID via the Content Browser Change 3789709 by Jamie.Dale Added warning for duplicate package localization IDs when gathering asset localization Change 3789713 by Jamie.Dale Special case zero-width space in the text shaper to avoid fonts rendering the fallback glyph Change 3789736 by Christina.TempelaarL Fixed recently-introduced StaticMeshEditor bug - changing LOD dropdown menu selection was not changing LOD sections category. Change 3789853 by Chris.Bunner Material instances should return overridden values when the caller is requesting the default, not leaving the request to fall through to the base material. #jira UE-52796 Change 3790185 by Brandon.Schaefer Add better error handling when using new SDK for linux on windows. #jira UE-50527 Change 3790195 by Jamie.Dale Fixed line-ending inconsistency when retrieving rich-text We were using LINE_TERMINATOR when getting the offsets, but \n when getting the text Change 3790473 by Chris.Bunner When finding expression by GUID, only return FunctionCall result if expression was found. Fixes cases where searched-for expression is after a FunctionCall in the expressions list. #jira UE-52729 Change 3790650 by Arciel.Rekman UBT: Linux: print build details first before refusing to build. - Tweak to the previous feature that we forgot. Change 3790681 by Arciel.Rekman UBT: Linux: tweaks to wording (SDK -> toolchain). Change 3791459 by Brandon.Schaefer Linux: libcurl rebuild for version 7.57 #jira OGS-870 Change 3791533 by Arciel.Rekman Better error messaging when UMB is unusable (UE-50658). - Should be replaced by a better fix, but merging this workaround in case the better fix will not be done in time for 4.19. (Edigrating CL 3789387, 3789787 from Release-4.18 to Dev-Editor) Change 3791885 by Matt.Kuhlenschmidt Fix static analysis #jira UE-53097 Change 3791910 by Brandon.Schaefer Fix for not using proper libraries on x86_64 for libcurl #jira OGS-870 Change 3792017 by Jamie.Dale Fixed a conflict between the path settings and favorite settings Change 3792022 by Jamie.Dale Fixed a crash that could happen when performing ARO on the property chains of a struct #jira UE-52999 Change 3792025 by Jamie.Dale Changed package summary localization ID to be versioned by the object version to avoid changing data in unversioned cooked assets Change 3792066 by Michael.Dupuis #jira UE-5751: Fixed possible crash when using dynamic matrial instance Added missing shaders for landscape when using tessellation Change 3792718 by Arciel.Rekman OpenGL: bringing back Windows workarounds to unblock copy-up (UE-52534). #jira UE-52534 Change 3793018 by Mike.Erwin new glTF importer plugin Import StaticMesh, Material, and Texture assets from the Khronos glTF 2.0 format. Text (.gltf) and binary (.glb) files are supported. Limitations: - There is no options UI. All assets from the file are imported. - The glTF format can describe animation and whole scenes, but the initial version of this plugin does not attempt either. - Data encoded as Base64 data URI is not supported. This is uncommon but is part of the glTF spec. #jira: UE-50695 Change 3793626 by Matt.Kuhlenschmidt Logging for HTML5 issue Change 3794034 by Matt.Kuhlenschmidt Fix CIS Change 3794271 by Michael.Dupuis #jira UE-53133: Fxed shadow calculation when using non whole scene shadow Change 3794273 by Chris.Bunner Function call material nodes should be created with no outputs by default. #jira UE-53127, UE-53128, UE-52616 Change 3794334 by Lina.Halper - Fix animation reinitializing when just setting new animation with single node - Deprecated GetScalarParameterDefault and replace that with GetScalarParameterDefaultValue #jira: UE-52796 Change 3794338 by Michael.Dupuis Fixed lod visual popping when texture mip used for landscape is not ready Change 3794350 by Mike.Erwin Fix glTF importer header includes. Build was failing on Linux. Change 3794357 by Michael.Dupuis #jira UE-53166: buildfix: removed phase 2 landscape optim leftover... Change 3794549 by Michael.Dupuis #jira UE-53166 : fixed compile error Change 3794755 by Matt.Kuhlenschmidt Fix automation warning Change 3794910 by Lina.Halper Change material default value to be red to keep the behavior same. - Previous code was getting default value of parent, which was wrong, but now since we're grabbing correct value, it's not doing what it meant to do. Changed content to keep same value as parent as default. Change 3795296 by Mike.Erwin glTF: fix Linux build errors A variable was being shadowed. The other errors are due to an obscure corner of the C++ spec which clang enforces. https://stackoverflow.com/questions/21900237/do-i-really-need-to-implement-user-provided-constructor-for-const-objects #jira UE-53204 Change 3797313 by Chris.Bunner Re-built lighting in Rendering/ShaderModels automated test map and updated failing screenshots. #jira UE-53198 Change 3803962 by Jamie.Dale Fixed struct instances not comparing against the correct default values when gathering for localization Change 3804771 by Michael.Dupuis Back out changelist 3783171 Change 3804772 by Michael.Dupuis Back out changelist 3783172 Change 3805258 by Michael.Dupuis Added missing shader cache for landscape Change 3806105 by Matt.Kuhlenschmidt Disable harware benchmarking during automation tests, commandlets, and on the build machine Change 3806438 by Michael.Dupuis #jira UE-53228: Fixed rendering path of new landscape optim when using GDoInitViewsLightingAfterPrepass(used in Orion) Change 3806577 by Matt.Kuhlenschmidt Change plugin uploading to crash reporter to only do so in editor builds Change 3806588 by Michael.Dupuis Remove temp test version in landscape version Change 3806900 by Jamie.Dale Fixed 'inconsistent DLL linkage' error when using older versions of Python 2.7 #jira UE-53353 Change 3807125 by Jamie.Dale Fixed UBT warning after Dev-Core merge Change 3807299 by tim.gautier QAGame: Checking in test asset M_LandscapeMaterial_Foliage, quicker repro for UE-53442 [CL 3807911 by Matt Kuhlenschmidt in Main branch]
2017-12-14 10:07:13 -05:00
// @todo this is a temp fix. A proper fix is making sure ConvexShapeIndices doesn't
// contain any duplicates (which is the original cause of UE-52123)
if (FirstVertIndex < LastVertIndex)
{
AddModFunc(ConvexCollision.VertexBuffer, FirstVertIndex, LastVertIndex);
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3807299) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3528776 by Yannick.Lange Allow thumbnails to be captured from a viewport always. #jira UE-45392 Change 3564359 by Yannick.Lange Back out part of changelist 3528776: Revert allowing thumbnails to be captured from a viewport to fix UE-47827 & UE-47785. #jira UE-47785, UE-47827 Change 3740671 by Matt.Kuhlenschmidt Make the font editor canvas respect dpi scale Change 3740810 by Josh.Engebretson PR #4138: Log GenerateProjectFiles to file when using UVS (Contributed by projectgheist) #jira UE-51358 Change 3740939 by Cody.Albert Fixing some #ifdefs that should be #ifs Change 3741089 by Alexis.Matte Make sure bImportBoneTracks is set to true when importing into level #jira UE-51999 Change 3741101 by Alexis.Matte Fix the import material search #jira UE-51857 Change 3741690 by Jamie.Dale Guard against an invalid index in SLocalizationCommandletExecutor::Tick #jira UE-52067 Change 3741710 by Jamie.Dale Made a static variable also const Change 3741724 by Michael.Dupuis Added missing shader cache Change 3742037 by Lauren.Ridge Details panels can now "own" a color picker so a different details panel refreshing doesn't close it. Also fixed refreshing state of the graph after changing texture or color parameter values Change 3742250 by Matt.Kuhlenschmidt PR #4185: Output Log Filter tooltip shows %s instead of category. (Contributed by LordNed) Change 3742308 by Lauren.Ridge Adding axis input to the material editor's viewport client Change 3742380 by Matt.Kuhlenschmidt USD importer improvements - USD now stores source file information for reimports - Fixed bug where no geometry would be imported if an exporter had set a time code even without animated data - Prevent a crash if a mesh doesnt have enough valid data to be imported Change 3742536 by Matt.Kuhlenschmidt Remove usd wrapper test project Change 3743564 by Alexis.Matte Fix skeletal mesh screen size auto set value when importing a LOD #test none #jira UE-52100 Change 3743582 by Lauren.Ridge Fixing non-desktop compiles Change 3743598 by Lauren.Ridge Fixing shadowed variable by renaming the global color picker weak ptr variable. Change 3743636 by Lauren.Ridge Creating a new parameter immediately allows naming Change 3743855 by Michael.Dupuis Added missing shader from cache Change 3744277 by Lauren.Ridge Don't show empty Global group if it only contained the material layer param. Change 3744330 by Lauren.Ridge Clarifying "no parameter" text Change 3744529 by Lauren.Ridge Making Save to Child and Save To Sibling buttons work for material layer params, show on material layer param panel Change 3744668 by Chris.Bunner Added shared layer input collection asset, a list of float/texture redirectors that allow setting globally in a material graph then retrieving within layer/blend graphs. Added output for number of unique shaders generated by a particular material instance. Show instruction counts when working on a material layer. Relaxed restrictions on material layers, base MA input is now optional. #jira UETOOL-1271, UETOOL-1278, UETOOL-1279 Change 3744669 by Chris.Bunner Added automated test for material layers, layer/blend instances and shared inputs. Change 3744754 by Laz.Matech Adding localization data to QAGame for the Realtime Preview localization test. #jira none Change 3744860 by Michael.Dupuis #jira UE-52049 : Do not update random stream in most case, only when adding new instances, or filling from built data Change 3744965 by Chris.Bunner Rebuilt lighting in automated test map and updated reflection capture screenshot. Change 3746015 by Michael.Dupuis #jira UE-52090: Added missing shader for forward rendering Change 3746038 by Michael.Dupuis #jira UE-51494: Make sure index is valid for this instance as instances from template and instance could mismatch due to in level changes Change 3746076 by Michael.Dupuis Removed unused code Change 3746998 by Tim.Gautier QAGame: - Renamed UMG_RealtimePreview > UMG_InEditorPreview - Moved UMG_InEditorPreview into UMG > Localization, setting up for future Localization tests Change 3747206 by Arciel.Rekman Linux: make UI scale more coarse to prevent unnecessary scaling (UE-52086). - Monitors whose physical dimensions fall in range of 80-110 DPI should still have scale=1.0. (Edigrating CL 3740942 from Release-4.18 to Dev-Editor) Change 3747211 by Arciel.Rekman Make failure to launch SCW more apparent to the user (UE-47263). - Fixes frequent crash on Linux. (Merging 3747070 from Release-4.18 to Dev-Editor) Change 3747726 by Tim.Gautier QAGame: Resubmitting updated Loc files Change 3747872 by Tim.Gautier QAGame: Resubmitting compiled Loc assets Change 3748118 by Lauren.Ridge Adding help text to the material layers preview tab Change 3748398 by Lauren.Ridge Fixing tooltips for the material layer read-only preview Change 3748565 by Arciel.Rekman Linux: fix RHIs settings being wrong when removed via project properties (UE-51203). - This was a deeper issue with config system than just Linux RHIs. - This is a better fix than one submitted to 4.18 branch in CL 3747086. Change 3749441 by Matt.Kuhlenschmidt PR #4201: Fix a typo in a comment. (Contributed by dneelyep) Change 3749442 by Matt.Kuhlenschmidt PR #4195: Incorrect specifier used for FText::Format (Contributed by projectgheist) Change 3749496 by Matt.Kuhlenschmidt Fix static analysis Change 3749805 by Lauren.Ridge Fixing reset to default on MaterialLayerParam in base material Change 3749838 by Lauren.Ridge Also correctly resetting names and layer states Change 3750442 by Mieszko.Zielinski Added a safety check which addresses the crash #UE4 Note that this is a temp fix. A proper fix is making sure ConvexShapeIndices doesn't contain any duplicates and will be inplemented in Dev-Framework. #jira UE-52123 Change 3752266 by Arciel.Rekman OpenGL: remove PLATFORM_WINDOWS exceptions. - Discrepancy in behavior between Windows and Linux OpenGL is unhelpful for bug reproducibility. - VAB bug should have been fixed long ago (on both platforms). Change 3752929 by Arciel.Rekman Linux: avoid crashing on unknown drivers. - See https://answers.unrealengine.com/questions/724100/crashes-on-startup-after-first-run.html - Checks in IsDeviceIntel() and such fail if the drivers were not detected. Change 3753254 by Michael.Dupuis Added missing shader for shader cache Change 3753426 by Michael.Dupuis #jira UE-5751: Added the possibility to change material instance exposed params at runtime using a MID for texture, vector and scalar for 1 component or all components Change 3753440 by Alexis.Matte Fix fbx scene importer morph target import crash #jira UE-52255 Change 3753457 by Michael.Dupuis build fix Change 3753700 by Chris.Bunner Make GetSharedInput preview fallback always available in editor as this should handle previews, thumbnails and other editor-only cases. Refactor to remove duplicate code in material translator. Material layer expressions are required for client load, fixes cooked builds using layer instances in the base material layer stack. Change 3754760 by Chris.Bunner Tidying up EngineTest/ShaderModels map. Change 3754765 by Arciel.Rekman Avoid placing tooltip windows under the cursor (UE-12288). - Fixes inability to use some corners of the screen on Linux (the tooltips there aren't click-through). Change 3754788 by Matt.Kuhlenschmidt Fix details panel crash after compiling blueprints that have edit conditon properties Change 3754933 by Christina.TempelaarL Fixed typo in heightLerp (transistion->transition). #jira UE-46736 Change 3754946 by Cody.Albert Update loading movie code to properly calculate delta time when throttled at 60fps Change 3755059 by Jamie.Dale Fixed game preview language not updating in realtime while PIE was enabled #jira UE-52209 Change 3755130 by Jamie.Dale Fixed game preview language not updating from native when switching between preview languages #jira UE-52348 Change 3755664 by Michael.Dupuis Fixed compile warning Change 3755714 by Yannick.Lange Always allow capturing thumbnails from viewport. This also hides the thumbnail editing UI when a thumbnail was captured from a viewport. Change 3755944 by Alexis.Matte Fix crash when importing morph target with "built in" tangent option #jira UE-52319 Change 3756109 by Christina.TempelaarL fixed FBX importer Import Textures tooltip, UMaterial -> Material in tooltip text #jira UE-48389 Change 3756169 by Jamie.Dale Added plural form pattern to SContentBrowser::GetPathText Change 3756493 by Laz.Matech Updating Localization content to further test InEditor Preview Language in UMG #jira none Change 3758336 by Alexis.Matte Fix a crash when importing morph target there was a unsync between some buffer depending on the import options #jira UE-52319 Change 3758947 by Jamie.Dale Fixed cursor position regression in search boxes This was caused by a call to SetText that was added in CL# 3627864 This caused the text to update as it was changed, which made the cursor jump to the end of the text and made it impossible to type in the middle of a search term. This was done as a bound FText value had been passed to the InitalText of SSearchBox, which made the text resolution behave strangely. InitalText should always be a value, and SSearchBox now resolves any bindings during its constructor. #jira UE-48874 Change 3759000 by Laz.Matech Submitting the .PO file for CL 3756493 #jira none Change 3759480 by Matt.Kuhlenschmidt Safe guard against brush details crash #jira UE-52278 Change 3759665 by Matt.Kuhlenschmidt PR #4214: UE-52249: Use valid PreviewShadowsIndicatorMaterialName (Contributed by projectgheist) Change 3761211 by Matt.Kuhlenschmidt Remove the restriction that a level must be writable to be locked/unlocked. Fixed duplicate icons being used by the level browser Change 3761304 by Chris.Bunner MaterialAttributeLayers graph node BaseMA input is no longer required. Note: Requires "Use Preview Value" set to true on inputs. Change 3761307 by Chris.Bunner New material layers and blends will have "Use Preview Value" set to true by default to avoid the need for connected inputs - Missed file on previous commit. Change 3761357 by Chris.Bunner Renamed material shared input enum. Change 3761419 by Chris.Bunner Updating material layers automated test assets after recent changes. Reverted some naming changes so existing screenshot tests can be reused. Change 3762058 by tim.gautier QAGame: Adding Material Layer assets for testing (Content/Materials/LayerFunction) Change 3763328 by Matt.Kuhlenschmidt Fix Slate warning at editor startup Change 3763354 by Alexis.Matte Fix skeletal mesh material assign when reducing a LOD that was import from a file using simplygon reduction #jira UE-52505 Change 3763501 by Matt.Kuhlenschmidt Prevent shared asset thumbnail pools from having their resources forcefully released when they are in use. ReleaseResources is now private and only called on destruction of the pool Change 3763574 by Matt.Kuhlenschmidt Fix slate material box brushes not being keyed off image size #jira UE-40219 Change 3763678 by Jamie.Dale Disable realtime level editor viewport if running under remote desktop This makes the main editor window much more responsive by default under remote desktop Change 3763679 by Jamie.Dale Added asset caching metrics for the loc gather Change 3763693 by Matt.Kuhlenschmidt Changed the code that activates the actor details tab when selection changes to a flash. There are simply too many things that change the selection and steal focus away from a tab being used #jira UE-51754 Change 3763826 by Michael.Dupuis Fixed Fortnite cooking crash Change 3763864 by Harrison.Moore Adding New Default 'LayerBlend' assets Change 3764028 by Christina.TempelaarL #jira UE-47695 Auto LOD bug Moved the sections dropdown to the LOD Picker category and modified Custom cb behavior, based on suggestions from charlie. Change 3764031 by Christina.TempelaarL #jira UE-47695 Auto LOD in StaticMeshViewer moved LOD combo widget to LOD picker category and hide custom checkboxes until custom checked. Change 3764076 by tim.gautier QAGame: Submitting UMG_Multitouch_test for initial Multitouch testing Change 3764263 by Matt.Kuhlenschmidt Fix the floor mesh thumbnail Change 3764284 by Chris.Bunner Removing some asserts for cases that can validly fail and are already handled. Change 3764372 by Matt.Kuhlenschmidt PR #4196: Show edit icons in editor (Contributed by projectgheist) Change 3764388 by Chris.Bunner Fixing logic for material, function and instance updating active materials and instances and their editors. Change 3764674 by Harrison.Moore test materials added, Blend updates Change 3764681 by Harrison.Moore Adding HMtest map Change 3766238 by Chris.Bunner Material layer callers need to let their internal material function calls update their inputs/outputs. Change 3766556 by Jamie.Dale Fixed crashes that could happen if some of the data table panels were closed We now always create the underlying widgets, even if they're currently hidden from view #jira UE-52552 Change 3767753 by Chris.Bunner When rebuilding a material function instance editor we must re-create and re-apply the proxies as the expressions have likely changed. Take care to maintain local parameter changes as these have not been saved yet. Change 3768719 by Michael.Dupuis #jira UE-52521: Prevent possible crash if a segment have no point or invalid point Change 3769157 by Jamie.Dale Fixed incorrect text selection if selecting via double click beyond the bounds of the line It would previously select the second to last word, rather than the last word #jira UE-51609 Change 3769159 by Harrison.Moore Belica Test update, New layer blends updated with texture type fix. Change 3769205 by Jamie.Dale Fixed Windows file save dialog not appending the correct extension when there were multiple options available #jira UE-52180 Change 3769220 by Harrison.Moore Layer blend tweaks Change 3769292 by Jamie.Dale Removing redundant code Applying the correct package ID, only to then strip it off again is rather pointless Change 3769479 by Arciel.Rekman UBT: Use response files for compiler when compiling for Linux. - Some command lines are too long when cross-compiling on Windows. Change 3769920 by Arciel.Rekman Linux: convert yet another initialization crash to a user-friendly message (UE-52457). #jira UE-52457 Change 3771055 by Alexis.Matte Make sure we set the Used by morph target material flag to material use by the morphtarget instead of all skinned mesh component Use the morph vertex factory only for section that has active morph target #jira UE-51483 Change 3771135 by Michael.Dupuis Fixed fortnite cooking Change 3773054 by Yannick.Lange Avoid loading viewport interaction assets when starting the editor. Change 3774184 by Arciel.Rekman Linux: disabled some gdb visualizers until the issue is fixed. - CL 3773942 by CengizT. Change 3774303 by Matt.Kuhlenschmidt Pull requests to fix various typos Change 3774305 by Matt.Kuhlenschmidt PR #4237: Visual Studio Repeatedly Opens (UE-51608) (Contributed by LordNed) #jira UE-51608 Change 3774701 by Arciel.Rekman OpenGL: fix ARB callback errors when hitting Build Lighting. - Merged from 4.18 shelf. Change 3775812 by Matt.Kuhlenschmidt Fix One-off crash undo-ing while working with Material Params / Material Functions #jira UE-52680 Change 3775849 by Matt.Kuhlenschmidt More info for UE-52610 Change 3775850 by Matt.Kuhlenschmidt Guard against mesh paint crashes #jira UE-52618 Change 3775904 by Matt.Kuhlenschmidt Added logging to track down window shutdown issues Change 3775913 by Matt.Kuhlenschmidt Pull requests for typos #jira UE-52751, UE-52748 Change 3776676 by Jamie.Dale Fixed being able to insert tabs into spin boxes with units #jira UE-52776 Change 3777006 by Michael.Trepka Process Mac windowDidBecomeMain and windowDidResignMain notifications immediately instead of deferring them. This solves issues with Slate code that closes and immediately opens new menu windows. Previously closing a window would schedule menu parent's activation event that could be processed after another menu's creation, making it immediately disappear. #jira UE-52145 Change 3777170 by Arciel.Rekman Linux: use Xft.dpi (most desktop environments expose their scale through that) as a DPI value (UE-52086, UE-52766). - Change by Brandon.Schaefer. - Limitation: no per-monitor DPI. (Edigrating CL 3776509 //UE4/Release-4.18/... to //UE4/Dev-Editor/...) Change 3777292 by Arciel.Rekman Linux: fix symbol collision causing problems with AMD drivers (UE-51843). - We cannot have elf_end() hidden, because libcuda.so calls elf_end from libnvidia-fatbinaryloader.so and this breaks linking monolithic binaries ("hidden symbol referenced in DSO"). - We cannot have elf_end() visible, because of a name collision with a different libelf used by AMD drivers. - The only possible workaround is to have elf_end() renamed. (Edigrating CL 3777242 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...) Change 3777686 by Joe.Conley Blueprint editor variable type tooltips: fix case mismatch that was preventing type name to be displayed properly in soft object/class reference tooltips. Change 3778180 by Jamie.Dale Avoid a crash if a regex pattern or matcher outlive ICU during shutdown #jira UE-52770 Change 3778182 by Jamie.Dale Avoid a crash if a break iterator outlives ICU during shutdown Change 3778368 by Jamie.Dale Added missing pragma once Change 3778560 by Matt.Kuhlenschmidt Prevent non-shared DDC notification from triggering for epic internal builds Change 3778709 by Lauren.Ridge Copying 4.18.2 array reordering propagating to children fix (originally 3778547) Change 3779205 by Lauren.Ridge Duplicating 3776649 to fix a crash on compile due to partial GC of a widget. #jira UE-52260 Change 3779217 by Brandon.Schaefer GitHub #3678 Fix Setup.sh handling of special characters in PNG path #jira UE-46103 Change 3779341 by Brandon.Schaefer GitHub #3012 Use elemtry OS versions to set the ubuntu versions for depencies #jira UE-39364 Change 3780274 by Joe.Conley DataTables: Add documentation tooltips showing type information to header columns Change 3780840 by Alexis.Matte Do a re-import when user re-import LOD 0 Prevent importing more then MAX_SKELETAL_MESH_LODS #jira UE-52373 Change 3781067 by Arciel.Rekman Linux: fix OSSSteam cross-compilation (and CIS). - Broken by previous change that put compile-time arguments into response file and bulk-replaced \ with /, which affected things like Definitions.Add("STEAM_SDK_VER_PATH=TEXT(\"Steam" + SteamVersion + "\")"); Change 3781110 by Christina.TempelaarL #jira UE-47695 moved Static Mesh Editor LOD menu from tools to viewport tool bar Change 3781531 by Christina.TempelaarL #jira UE-47695 added LOD menu to Static Mesh Editor viewport Change 3781663 by Alexis.Matte Fix for cancel export fbx when previewing animation sequence export #jira UE-49743 Change 3782007 by Jamie.Dale Improved the ability to lockdown available game languages In addition to the previous "DisabledCultures" array, you can now add an array of "EnabledCultures" (using the same per-build config filters) to explicitly list the cultures that are allowed to be used in your build (if the list is empty, then everything is allowed unless otherwise disabled). This also stops the game from attempting to fallback to the native language if the native language has been disabled (we will fallback to the first available language instead). Change 3782122 by Jordan.Walker test assets for material layers Change 3782131 by Joe.Graf Added support for IOS and TVOS targets when generating CMake files on Mac Change 3782218 by Christina.TempelaarL fixing include paths and capitalization causing build errors. Change 3783171 by Michael.Dupuis Added the possibility to override default LOD rules for visible primitive and whole scene shadow casting primitive Added the possibility to store Custom data per view for the frame duration Change 3783172 by Michael.Dupuis #jira UE-35097 : Refactored landscape rendering logic to improve general performance while using new custom data and custom lod feature Exposed many new settings to control component using sub sections rendering, tessellated component, shadow should be include into tessellation, tessellation falloff based on camera location Changed how LOD distribution is done to be in screen size instead of distance. Give the possibility to have a different distribution for LOD0 vs the other one. Change 3783174 by Michael.Dupuis missing file to landscape refactor Change 3783315 by Lauren.Ridge Changing a parameter in the Material Parameter Panel now dirties the material correctly. Changing a layer parameter in the Material Instance Editor now refreshes the details panel as well. Change 3783374 by Chris.Bunner Adding MaterialSharedInputCollection to hidden list when MaterialLayers disabled. Change 3783617 by Chris.Bunner Added a Channel Mask material expression parameter. Wraps up a vector parameter and dot product with a single channel selection interface, internally a regular vector parameter. Fixed GetSharedInput failing to return the preview texture in the Function Instance editor. Change 3783676 by Lauren.Ridge Adding access to a material function instance's parent in the Material Instance Editor Change 3783751 by Michael.Trepka PR #4248: Fixed C++ std in generated Xcode project to match rest of engine (C++14) (Contributed by Bo98) Change 3783971 by Brandon.Schaefer Rename/Move all deploy/Deploy folder/files into AlembicDeploy. Due to case sensitivity on linux, need to maintain the correct case. #jira UE-37631 Change 3783992 by Michael.Dupuis #jira UE-35097: Remove tessellation on editor tools Fixed a case where tessellation multiplier at 0 would cause the component to not be visible Fixed minor tessellation falloff calculation error Change 3784502 by Chris.Bunner Restored missing bool setter. Coding standards fix. Change 3784614 by Arciel.Rekman Linux: better error message when running out of inotify watches (UE-50459). #jira UE-50459 Change 3784620 by Chris.Bunner Updated LayerBlend_TextureMask to use new ChannelMask parameter. Change 3784725 by Lauren.Ridge Fixing groups not sorting correctly Change 3785645 by Chris.Bunner Non-editor compile fix. Change 3785666 by Arciel.Rekman Linux: restore ability to use Wayland instead of X11. - SDL libs recompiled and Wayland version is set to lower one to be compatible with the compositor shipped on Ubuntu 16.04 LTS - Change by Anthony.Bills. Change 3785708 by Arciel.Rekman Linux: implement voice capture using SDL (non-server only) (UE-51298). - Based on pull request #4131 by mkirzinger. Change 3785878 by Arciel.Rekman UBT: add VSCode to default generators on Linux. Change 3786058 by Arciel.Rekman Do not add dependencies on other RHIs for servers (UE-48894). - Pull request #3944 contributed by pfoote. #jira UE-48894 Change 3786845 by Arciel.Rekman Code changes to make gcc support easier (UE-51978). - Contributed by a licensee (pull request #4181 by tomwardio "Collection of fixes to allow UE4 to be compiled by GCC on Linux"). Change 3786871 by Matt.Kuhlenschmidt Fix static analysis Change 3786883 by Matt.Kuhlenschmidt Fix HTML5 Change 3786923 by Matt.Kuhlenschmidt Fix engine layer blend asset referencing game content. This is not allowed #jira UE-52888 Change 3786927 by Brandon.Schaefer Linux: Alembic support #jira: UE-37631 Change 3786994 by Arciel.Rekman Remove support for /-prefixed switches (UE-47429). - They collide with absolute file paths on Mac/Linux and a source of inconsistencies between platforms. #jira UE-47429 Change 3787032 by Michael.Trepka Initial support for building and running Niagara on Mac Change 3787035 by Brandon.Schaefer GitHub #4166 Undef GL entrypoint macros after use #jira UE-51663 Change 3787144 by Lauren.Ridge Fixing material parameter group association resetting after undo #jira UE-52514 Change 3787839 by Jordan.Walker updated engine level layer blends to not include game content switched them to use Chris B's new mask selection node Change 3787967 by Lauren.Ridge Fix for broken layer groups, related crash Change 3787991 by Lauren.Ridge Fixing thumbnails for material function instances, resolving not being able to delete new function instances #jira UE-52967 Change 3788226 by Michael.Trepka Fixed a deadlock when closing Mac CrashReportClient which resulted from changes in CL 3777006 #jira UE-53002 Change 3788557 by Brandon.Schaefer Fix shadow compiler warnings around our includes Change 3789700 by Lauren.Ridge Experimental setting for turning on Material Layers - off by default. Change 3789703 by Jamie.Dale Harden the LocMeta and LocRes loading to prevent loading files that are too new Change 3789706 by Jamie.Dale Added localization ID to the package summary This will allow the localization gatherer to query it without having to load the entire package Change 3789708 by Jamie.Dale Added a way to display and reset the package localization ID via the Content Browser Change 3789709 by Jamie.Dale Added warning for duplicate package localization IDs when gathering asset localization Change 3789713 by Jamie.Dale Special case zero-width space in the text shaper to avoid fonts rendering the fallback glyph Change 3789736 by Christina.TempelaarL Fixed recently-introduced StaticMeshEditor bug - changing LOD dropdown menu selection was not changing LOD sections category. Change 3789853 by Chris.Bunner Material instances should return overridden values when the caller is requesting the default, not leaving the request to fall through to the base material. #jira UE-52796 Change 3790185 by Brandon.Schaefer Add better error handling when using new SDK for linux on windows. #jira UE-50527 Change 3790195 by Jamie.Dale Fixed line-ending inconsistency when retrieving rich-text We were using LINE_TERMINATOR when getting the offsets, but \n when getting the text Change 3790473 by Chris.Bunner When finding expression by GUID, only return FunctionCall result if expression was found. Fixes cases where searched-for expression is after a FunctionCall in the expressions list. #jira UE-52729 Change 3790650 by Arciel.Rekman UBT: Linux: print build details first before refusing to build. - Tweak to the previous feature that we forgot. Change 3790681 by Arciel.Rekman UBT: Linux: tweaks to wording (SDK -> toolchain). Change 3791459 by Brandon.Schaefer Linux: libcurl rebuild for version 7.57 #jira OGS-870 Change 3791533 by Arciel.Rekman Better error messaging when UMB is unusable (UE-50658). - Should be replaced by a better fix, but merging this workaround in case the better fix will not be done in time for 4.19. (Edigrating CL 3789387, 3789787 from Release-4.18 to Dev-Editor) Change 3791885 by Matt.Kuhlenschmidt Fix static analysis #jira UE-53097 Change 3791910 by Brandon.Schaefer Fix for not using proper libraries on x86_64 for libcurl #jira OGS-870 Change 3792017 by Jamie.Dale Fixed a conflict between the path settings and favorite settings Change 3792022 by Jamie.Dale Fixed a crash that could happen when performing ARO on the property chains of a struct #jira UE-52999 Change 3792025 by Jamie.Dale Changed package summary localization ID to be versioned by the object version to avoid changing data in unversioned cooked assets Change 3792066 by Michael.Dupuis #jira UE-5751: Fixed possible crash when using dynamic matrial instance Added missing shaders for landscape when using tessellation Change 3792718 by Arciel.Rekman OpenGL: bringing back Windows workarounds to unblock copy-up (UE-52534). #jira UE-52534 Change 3793018 by Mike.Erwin new glTF importer plugin Import StaticMesh, Material, and Texture assets from the Khronos glTF 2.0 format. Text (.gltf) and binary (.glb) files are supported. Limitations: - There is no options UI. All assets from the file are imported. - The glTF format can describe animation and whole scenes, but the initial version of this plugin does not attempt either. - Data encoded as Base64 data URI is not supported. This is uncommon but is part of the glTF spec. #jira: UE-50695 Change 3793626 by Matt.Kuhlenschmidt Logging for HTML5 issue Change 3794034 by Matt.Kuhlenschmidt Fix CIS Change 3794271 by Michael.Dupuis #jira UE-53133: Fxed shadow calculation when using non whole scene shadow Change 3794273 by Chris.Bunner Function call material nodes should be created with no outputs by default. #jira UE-53127, UE-53128, UE-52616 Change 3794334 by Lina.Halper - Fix animation reinitializing when just setting new animation with single node - Deprecated GetScalarParameterDefault and replace that with GetScalarParameterDefaultValue #jira: UE-52796 Change 3794338 by Michael.Dupuis Fixed lod visual popping when texture mip used for landscape is not ready Change 3794350 by Mike.Erwin Fix glTF importer header includes. Build was failing on Linux. Change 3794357 by Michael.Dupuis #jira UE-53166: buildfix: removed phase 2 landscape optim leftover... Change 3794549 by Michael.Dupuis #jira UE-53166 : fixed compile error Change 3794755 by Matt.Kuhlenschmidt Fix automation warning Change 3794910 by Lina.Halper Change material default value to be red to keep the behavior same. - Previous code was getting default value of parent, which was wrong, but now since we're grabbing correct value, it's not doing what it meant to do. Changed content to keep same value as parent as default. Change 3795296 by Mike.Erwin glTF: fix Linux build errors A variable was being shadowed. The other errors are due to an obscure corner of the C++ spec which clang enforces. https://stackoverflow.com/questions/21900237/do-i-really-need-to-implement-user-provided-constructor-for-const-objects #jira UE-53204 Change 3797313 by Chris.Bunner Re-built lighting in Rendering/ShaderModels automated test map and updated failing screenshots. #jira UE-53198 Change 3803962 by Jamie.Dale Fixed struct instances not comparing against the correct default values when gathering for localization Change 3804771 by Michael.Dupuis Back out changelist 3783171 Change 3804772 by Michael.Dupuis Back out changelist 3783172 Change 3805258 by Michael.Dupuis Added missing shader cache for landscape Change 3806105 by Matt.Kuhlenschmidt Disable harware benchmarking during automation tests, commandlets, and on the build machine Change 3806438 by Michael.Dupuis #jira UE-53228: Fixed rendering path of new landscape optim when using GDoInitViewsLightingAfterPrepass(used in Orion) Change 3806577 by Matt.Kuhlenschmidt Change plugin uploading to crash reporter to only do so in editor builds Change 3806588 by Michael.Dupuis Remove temp test version in landscape version Change 3806900 by Jamie.Dale Fixed 'inconsistent DLL linkage' error when using older versions of Python 2.7 #jira UE-53353 Change 3807125 by Jamie.Dale Fixed UBT warning after Dev-Core merge Change 3807299 by tim.gautier QAGame: Checking in test asset M_LandscapeMaterial_Foliage, quicker repro for UE-53442 [CL 3807911 by Matt Kuhlenschmidt in Main branch]
2017-12-14 10:07:13 -05:00
}
}
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
if (TriMeshCollision.VertexBuffer.Num() > 0)
{
AddModFunc(TriMeshCollision.VertexBuffer, 0, TriMeshCollision.VertexBuffer.Num() - 1);
}
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
}
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
bool UNavCollision::ExportGeometry(const FTransform& LocalToWorld, FNavigableGeometryExport& GeoExport) const
{
if (bHasConvexGeometry)
{
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
GeoExport.ExportCustomMesh(ConvexCollision.VertexBuffer.GetData(), ConvexCollision.VertexBuffer.Num(),
ConvexCollision.IndexBuffer.GetData(), ConvexCollision.IndexBuffer.Num(),
LocalToWorld);
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
GeoExport.ExportCustomMesh(TriMeshCollision.VertexBuffer.GetData(), TriMeshCollision.VertexBuffer.Num(),
TriMeshCollision.IndexBuffer.GetData(), TriMeshCollision.IndexBuffer.Num(),
LocalToWorld);
}
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
return bHasConvexGeometry;
}
void DrawCylinderHelper(FPrimitiveDrawInterface* PDI, const FMatrix& ElemTM, const FVector::FReal Radius, const FVector::FReal Height, const FColor Color)
{
constexpr FVector::FReal AngleDelta = 2.0 * UE_DOUBLE_PI / 16.0;
FVector X, Y, Z;
ElemTM.GetUnitAxes(X, Y, Z);
FVector LastVertex = ElemTM.GetOrigin() + X * Radius;
for(int32 SideIndex = 0;SideIndex < 16;SideIndex++)
{
const FVector Vertex = ElemTM.GetOrigin() +
(X * FMath::Cos(AngleDelta * static_cast<FVector::FReal>(SideIndex + 1)) + Y * FMath::Sin(AngleDelta * static_cast<FVector::FReal>(SideIndex + 1))) * Radius;
PDI->DrawLine(LastVertex,Vertex,Color,SDPG_World);
PDI->DrawLine(LastVertex + Z * Height,Vertex + Z * Height,Color,SDPG_World);
PDI->DrawLine(LastVertex,LastVertex + Z * Height,Color,SDPG_World);
LastVertex = Vertex;
}
}
void DrawBoxHelper(FPrimitiveDrawInterface* PDI, const FMatrix& ElemTM, const FVector& Extent, const FColor Color)
{
FVector B[2], P, Q;
B[0] = Extent; // max
B[1] = -1.0f * Extent; // min
for( int32 i=0; i<2; i++ )
{
for( int32 j=0; j<2; j++ )
{
P.X=B[i].X; Q.X=B[i].X;
P.Y=B[j].Y; Q.Y=B[j].Y;
P.Z=B[0].Z; Q.Z=B[1].Z;
PDI->DrawLine( ElemTM.TransformPosition(P), ElemTM.TransformPosition(Q), Color, SDPG_World);
P.Y=B[i].Y; Q.Y=B[i].Y;
P.Z=B[j].Z; Q.Z=B[j].Z;
P.X=B[0].X; Q.X=B[1].X;
PDI->DrawLine( ElemTM.TransformPosition(P), ElemTM.TransformPosition(Q), Color, SDPG_World);
P.Z=B[i].Z; Q.Z=B[i].Z;
P.X=B[j].X; Q.X=B[j].X;
P.Y=B[0].Y; Q.Y=B[1].Y;
PDI->DrawLine( ElemTM.TransformPosition(P), ElemTM.TransformPosition(Q), Color, SDPG_World);
}
}
}
void UNavCollision::DrawSimpleGeom(FPrimitiveDrawInterface* PDI, const FTransform& Transform, const FColor Color)
{
const FMatrix ParentTM = Transform.ToMatrixWithScale();
for (int32 i = 0; i < CylinderCollision.Num(); i++)
{
FMatrix ElemTM = FTranslationMatrix(CylinderCollision[i].Offset);
ElemTM *= ParentTM;
DrawCylinderHelper(PDI, ElemTM, CylinderCollision[i].Radius, CylinderCollision[i].Height, Color);
}
for (int32 i = 0; i < BoxCollision.Num(); i++)
{
FMatrix ElemTM = FTranslationMatrix(BoxCollision[i].Offset);
ElemTM *= ParentTM;
DrawBoxHelper(PDI, ElemTM, BoxCollision[i].Extent, Color);
}
}
#if WITH_EDITOR
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
void UNavCollision::InvalidateCollision()
{
ClearCollision();
bForceGeometryRebuild = true;
}
void UNavCollision::InvalidatePhysicsData()
{
ClearCollision();
CookedFormatData.FlushData();
}
#endif // WITH_EDITOR
void UNavCollision::Serialize(FArchive& Ar)
{
Super::Serialize(Ar);
const int32 VerInitial = 1;
const int32 VerAreaClass = 2;
const int32 VerConvexTransforms = 3;
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
const int32 VerShapeGeoExport = 4;
const int32 VerLatest = VerShapeGeoExport;
// use magic number to determine if serialized stream has version :/
const int32 MagicNum = 0xA237F237;
int64 StreamStartPos = Ar.Tell();
int32 Version = VerLatest;
int32 MyMagicNum = MagicNum;
Ar << MyMagicNum;
if (MyMagicNum != MagicNum)
{
Version = VerInitial;
Ar.Seek(StreamStartPos);
}
else
{
Ar << Version;
}
// loading a dummy GUID to have serialization not break on
// packages serialized before switching over UNavCollision to
// use BodySetup's guid rather than its own one
// motivation: not creating a new engine version
// @NOTE could be addressed during next engine version bump
FGuid Guid;
Ar << Guid;
bool bCooked = Ar.IsCooking();
Ar << bCooked;
if (FPlatformProperties::RequiresCookedData() && !bCooked && Ar.IsLoading())
{
UE_LOG(LogNavigation, Fatal, TEXT("This platform requires cooked packages, and NavCollision data was not cooked into %s."), *GetFullName());
}
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
const bool bUseConvexCollisionVer3 = bGatherConvexGeometry || (CylinderCollision.Num() == 0 && BoxCollision.Num() == 0);
const bool bUseConvexCollision = bGatherConvexGeometry || (BoxCollision.Num() > 0) || (CylinderCollision.Num() > 0);
const bool bProcessCookedData = (Version >= VerShapeGeoExport) ? bUseConvexCollision : bUseConvexCollisionVer3;
if (bCooked && bProcessCookedData)
{
if (Ar.IsCooking())
{
FName Format = NAVCOLLISION_FORMAT;
GetCookedData(Format); // Get the data from the DDC or build it
TArray<FName> ActualFormatsToSave;
ActualFormatsToSave.Add(Format);
CookedFormatData.Serialize(Ar, this, &ActualFormatsToSave);
}
else
{
CookedFormatData.Serialize(Ar, this);
}
}
if (Version >= VerAreaClass)
{
Ar << AreaClass;
}
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
if (Version < VerShapeGeoExport && Ar.IsLoading() && GIsEditor)
{
bForceGeometryRebuild = true;
}
}
void UNavCollision::PostLoad()
{
Super::PostLoad();
// Our owner needs to be post-loaded before us else they may not have loaded
// their data yet.
UObject* Outer = GetOuter();
if (Outer)
{
Outer->ConditionalPostLoad();
UStaticMesh* StaticMeshOuter = Cast<UStaticMesh>(Outer);
Async Static Mesh Compilation / Loading - Add protection against async property accessed during async build and postload. - Split PostLoad into 3 steps with the most part now being made async. - Make Build/BatchBuild API async when the feature is activated. - Add a new StaticMesh compilation manager. (This will be refactory later to reduce duplicated code with texture compiler). - Skip RenderState creation for any static mesh component still being built so they only show up when ready. - Fixed DistanceField and MeshCard computation that might trigger too soon if fixups are required to RenderData during PostLoad. - Dynamic priorisation for building and updating static meshes nearest to the viewport. - Implement different PIE modes, current default is to stall only for mesh that might affect nagivation/collision for players/bots. - Add a new generic interface for assets being built (still a WIP). - Add ability in FrontEnd filters to skip serialization of asset being async compiled and refresh when compilation finishes. - Prevent auto-save while textures and static meshes are being built (same as shaders) - Logic has been reordered in some Fortnite Building Component to avoid unnecessarily touching static mesh properties. General Optimizations - Use cached thumbnails until shaders/textures/static meshes are ready to improve performance and avoid rendering incomplete thumbnails. DEBUGGING - Can be forcibly enabled/disabled through command-line via -asyncstaticmeshcompilation=[off, on, paused] - Can pause staticmesh compilation using Editor.AsyncStaticMeshCompilation = 2 or -asyncstaticmeshcompilation=paused - Can manually resume a specified amount of paused compilation using Editor.AsyncStaticMeshCompilationResume [Num] - Can forcibly wait on all compilation using Editor.AsyncStaticMeshCompilationFlushAll BENCHMARKS - 2m19s to 17.9s for Loading FortGPUTestbed's LumenTest with an empty local only DDC - 2h45m to 5mxxs for Loading Reverb's P_World with an empty local only DDC - 17m29 to 10m27s for Loading Apollo_Terrain_Edit with an empty local only DDC TESTS - Loading maps from Reverb, Fortnite, ShooterGame, QAGame, FortGPUTestbed - Content browser interactions while still under heavy compilation - Importing with Datasmith / Dataprep - Working with the new Mesh Modeling Tool - Shutting down the editor while loading - Most of EngineTest Test Suite REFERENCES - Design https://docs.google.com/document/d/1O4GI1G9AtQN6l0SaGFfXw0DyNhlLunLoEqne5INvxIQ - Documentation https://docs.google.com/document/d/1KCdFEMhhcsGwfgOisTVwlOwtsmEd7qbB0V6Tc39Gb10 #rb Francis.Hurteau [CL 14688146 by danny couture in ue5-main branch]
2020-11-09 07:50:34 -04:00
// It's OK to skip this in case of StaticMesh pending compilation because it is also
// called by UStaticMesh::CreateNavCollision at the end of UStaticMesh's PostLoad.
if (StaticMeshOuter != nullptr && !StaticMeshOuter->IsCompiling())
{
Setup(StaticMeshOuter->GetBodySetup());
}
}
}
FByteBulkData* UNavCollision::GetCookedData(FName Format)
{
TRACE_CPUPROFILER_EVENT_SCOPE(UNavCollision::GetCookedData);
Merging from //UE4/Fortnite-Staging up to CL#3673800 based on CL#3664064 from //Fortnite/Main #rb none #lockdown Nick.Penwarden ================================================================================================= THESE CHANGES TOUCH MULTIPLE PLATFORMS AND/OR RESTRICTED FOLDERS. YOU MUST REVIEW THESE MANUALLY AND APPEND THEM TO THE DESCRIPTIONS FOR THE APPROPRIATE PLATFORMS. ================================================================================================= Change 3662267 by Nick.Darnell Engine - Fixing a bug in GetAccurateRealTime, it wasn't subtracting GStartTime, which if you don't prevents accurate platform time when you try to store it in a float. #jira nojira Change 3662176 by Ben.Marsh Disable image integrity report generation if a debugger is attached, and in editor builds. #jira FORT-55656 Change 3656958 by Luke.Thatcher [FORTNITE] [CONSOLE] [+] Improved frame syncing mechanism - Improves input latency by allowing the game thread to sync to the swap chain flip of the previous frame. - Added "r.GTSyncType" CVar to control how the game thread syncs with the rest of the pipe. - r.GTSyncType 2 will sync the game thread with the flip of the swap chain, preventing the pipe from getting too long and causing excess input latency. Platforms are required to implement RHIWaitForFlip and RHISignalFlipEvent, and call RHIInitializeFlipTracking on RHI startup. A separate thread monitors the progress of frame flips and signals task graph events as they pass their corresponding frame index. In r.GTSyncType 2 mode, the game thread is signaled by this flip tracking thread. [~] Unified platform specific sync interval CVars (D3D12.SyncInterval, D3D11.SyncInterval, r.PS4FlipRate, RHI.SyncIntervalOgl) into one: rhi.SyncInterval - 1 == 60Hz - 2 == 30Hz - 3 == 20Hz [-] Removed large number in XboxOneTime. Adding this arbitrary number prevents us from comparing timestamps from FPlatformTime::Seconds() and various OS callbacks (e.g. flip timings). #jira FORT-50803 Change 3655598 by Lukasz.Furman added filtering for navmesh's low height spans to fix crash on layer partitioning % of span reductions depends on presence of stair or roof building in navmesh tile, changed failsafes in layer code to ignore entire tile if heightfield is too complex to partition instead of reallocating memory #jira FORT-35375 Change 3648972 by Keith.Judge Add analytics to help diagnose default parameter collection buffer issue. +++ REMOVE ONCE CORE ISSUE IS SOLVED +++ #jira FORT-54690 Change 3648756 by Bart.Hawthorne Integrate 3645298 from //UE4/Dev-Networking Deprecate GetNetworkObjectInfo in favor of separate FindNetworkObjectInfo and FindOrCreateNetworkObjectInfo methods. #jira none Change 3643090 by Josh.Markiewicz #UE4 - proper handling of "pending connection lost" - triggered only if a connection is lost and there no "owning actor" to deal with the connection loss -- added Rejoin and CleanedUp states to connection to make sure that the pending connection lost delegate only fires at the appropriate time - delegate returns the unique id of the player if known (still possible to be unknown if connection lost after NMT_Hello) - changed debug output on timeout if the net connection was already in the process of being destroyed -- occurs when game hitches during the pending destroy 2 second wait -- ReceivedAcks should have been called to clean things up quietly in those 2 seconds but blocking the game thread will cause the cleanup to look like a timeout - added userid to UNetConnection::Describe - bad split screen player handling of unique id -- splitscreen uniqueid was overwriting the primary player id -- only store the id on the child connection - added some clarifying comments #review-3642816 @ryan.gerleve, @bob.tellez, @sam.zamani, @bart.hawthorne, @dave.ratti #jira FORT-26776 Change 3639043 by Alex.Thurman Fix CommonTreeView SetSelection to correctly update list navigation, and behave similarly to CommonListView's SetSelectedItem. #JIRA FORT-45841 Change 3632275 by Seth.Weedin #JIRA FORT-54203 - Add clamps to ActiveSound fade interpolation to prevent unwanted volume spikes. Remove 0.01 start time for single-fire audio cues. Should remove the sudden pops sometimes heard when firing weapons, as well as smooth out fade volume in general. Change 3626944 by Josh.Markiewicz #UE4 - added "updates connection status" flag to ServiceConfigMCP - disable updates on Cloud and Friend services (Fortnite only) - removed overloaded ProcessConnectionStatus function in cloud service #jira FORT-53113 Change 3626226 by Stewart.Lynch LLM Update - Memory reductions, Summary page, enum scopes, refactor and cleanup of tags * Remove all static arrays and hard limits from LLM. Everything is now dynamically allocated using the internal LLM allocators. The overhead when LLM is disabled is now only 48K (was 40MB) * re-wrote LLMMap. Now stores an int32 index rather then pointer in the HashMap array. Also, changed the Values to be arrays for structs instead of structs of arrays. Means that the tag can be stored in a single byte. Changed the size of the allocation size from int64 to int32. All this takes the memory down from around 600MB to 100MB. It was 120 bytes per allocation, now 29 bytes. * changed all LLM scopes over to enums. This has a number of benefits; LLM can be enable in Test, less CPU overhead, stored in a byte (LLM overhead /= 8) * summary page for content creators where all lower-level stats are grouped under one Engine stat * renamed ELLMScopeTag enum to ELLMTag * renamed LLM_SCOPED_TAG_WITH_ENUM macro to LLM_SCOPE * removed Tracker arg from LLM_SCOPE and added LLM_PLATFORM_SCOPE macro * fixed GenericPlatformMallocCrash stat. Although it seems not be be used anymore * fixed BackupOOMMemoryPool stat (now shows in both default and platform pages) * added separate LLM enums for XB1, PS4 and D3D12 (PS4LLM.cpp/h etc.) * lots of changes adding/removing/renaming tags * added LLMArray and FLLMObjectAllocator classes * disabled asset tag tracking by default because it takes up so much memory even when not used * enable LLM in all non-shipping builds. In Test the on screendisplay won't show because it uses the stats system but it till still write out the csv. * all the stat macros have been left as they were and can be enabled on the LLM_STAT_TAGS_ENABLED define. These are needed for the asset tagging. * disabled LLM_TRACK_PEAK_MEMORY because there is a problem with the way it adds the peaks for multiple threads. This needs to be fixed. * added a CVar to control the csv write interval: LLM.LLMWriteInterval * added static arrays for the enum tags setup. Easier to manage and removes need for slow switch statements. * renamed FLLMThreadStateManager to FLLMTracker to make it consistent with the enum * fixed program size stat which was broken recently on PS4. This was due to initialisation order and global platform stats setup #jira NONE-01 Change 3622978 by Lukasz.Furman changed WeaponStatus BT decorator to be event driven, fixes AI trying to check ranged weapon abilities without valid weapon includes copy of CL# 3620700 #jira FORT-45914 #review-3622979 John.Abercrombie Change 3622340 by Josh.Markiewicz #UE4 - playerid netconnection variable setup properly on clients and servers for both beacons and game net drivers - ipconnection prints uniqueid with lowleveldescribe #jira fort-0 Change 3621386 by Tim.Tillotson Add the ability to retry HTTP operations by VERB. This allows us to automatically retry cloud save PUT operations. #JIRA FORT-53717 #review-3621317 @Josh.Markiewicz @Ian.Fox @Carlos.Cuello Change 3620517 by Keith.Judge Xbox One - Revert iOS behaviour for the depth bias back to how it was, and make separate XB1 change use its own define to avoid confusion. #jira FORT-53928 Change 3620248 by Lukasz.Furman changed behavior of UBTTask_MoveTo.bStopOnOverlap flag after recent AcceptanceRadius fix, updated comments to be more detailed #jira nojira Change 3616187 by Bob.Tellez #UE4 Throwing an error (for now) if you attempt to use both the malloc profiler and leak detection at the same time since it causes a deadlock. #JIRA UE-0 Change 3613935 by Peter.Knepley More logging on update launcher launching #jira nojira #robomerge rp rn Change 3613537 by Marcus.Wassmer Safety asserts around the MarkPendingKill feature for rendering classes. #jira FORT-50385 Change 3613399 by Arne.Schober Extended ShowMaterialDrawEvents to enable it only in very specific passes and default enabled Depth for Fortnite on PS4 to track down a crash. #RB Marcus.Wassmer #jira FORT-53610 Change 3610794 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce UMG class memory #jira UE-52043 #ROBOMERGE-SOURCE: CL 3610792 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3610144 by Stewart.Lynch General LLM improvements * added tracking for misc task graph tasks (moves 20MB out of Untagged) * renamed EngineTick to EngineMisc * added tracking for FName * added tracking for GC_ProcessObjectArray potential leak * renamed index & vertex buffers stat to Meshes * added hooks for MemPro to track allocations from a single category. Currently defined out. I haven't added MemPro.cpp/h. * removed AVAILABLE_PHYSICAL stat from LLM csv * csv files now include the date in the filename * fixed potential threading bug when reading stat values to csv * made IsDebugMemoryEnabled() always return false in shipping and if not runnong on a dev-kit (PS4). The reason is that the function is a bit hacky, and should only be used for debug purposes, such as displaying the on screen warning. * added lots more scopes * started changing Stat scopes to enum scopes. Stat scopes will be phased out. * added tracking of FName memory * added llmplatform tracking for XBoxSymbols * added llm tracking for CPU symbol allocations (20MB) * wrote an allocator for XBoxOneStack reading so that it doesn't go through Malloc and get tracked by LLM. * added tracking for GC * fixed tracking for TransientMemoryAllocator * added tracking for networking memory * added more audio memory tracking * added tracking for blueprints * added tracking for static meshes * show on screen warning if debug memory is enabled * added tracking for particles * renamed Phys to PhysX and added more scopes * renamed Slate to UI and added more scopes * much better coverage of networking memory * improved coverage of audio #jira FORT-53420 Change 3610136 by robomerge #ROBOMERGE-AUTHOR: marc.audy Reduce size of UStaticMeshComponent by 224 bytes (cumulative, 64 bytes exclusive) Reduce size of UPrimitiveComponent by 176 bytes (cumulative, 64 bytes exclusive). Reduce size of USceneComponent by 112 bytes. Reduce size of FLightingChannels from 3 bytes to 1. Reduce size of FBodyInstance by 16 bytes. #jira FORT-52043 #ROBOMERGE-SOURCE: CL 3610134 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607937 by robomerge #ROBOMERGE-AUTHOR: paul.moore #jira FORT-53105 - Fix websocket not providing information when the peer closes the connection. #ROBOMERGE-SOURCE: CL 3607933 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3607042 by Bart.Hawthorne Move replay.Loop functionality into the demo net driver and rename it demo.Loop #jira none Change 3605448 by robomerge #ROBOMERGE-AUTHOR: seth.weedin #Athena - Pass owner to ActiveSounds created using PlaySoundAtLocation/PlaySound2D to allow "Limit to Owner" concurrency rules to work. Hook up for weapon sounds. #JIRA FORT-53180 #ROBOMERGE-SOURCE: CL 3605443 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3604787 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Initial support for hotfixing live assets from .ini files - This allows clients and server to patch certain assets in memory whenever .ini file hotfixes are downloaded - Only CurveTables and DataTables are supported for now - The new asset content must be in Json format, the same format the editor uses for importing - Assets that are hotfixed will be synchronously loaded if they're not already in memory. They'll be retained in memory afterwards. - IMPORTANT: Json data must be supplied on a single line, and all double quotes must be escaped! - The changes must go in the Game.ini file and use the following syntax: [AssetHotfix] +CurveTable=("/Game/Folder/MyCurveTable","[{\"Name\":\"Default\"}]") +DataTable=("/Game/Folder2/MyDataTable","[{\"Name\":\"Foo\"}]") #jira FORT-52099 [CODEREVIEW] frank.gigliotti [FYI] peter.knepley,bob.tellez #ROBOMERGE-SOURCE: CL 3604784 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3602067 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Loading time improvements - This shaves off up to 10 seconds of load time on PS4 in Athena Details: - Fixed multiple sub-levels not being able to be enqueued for loading in a single client frame. Athena has ~300 sub-levels, so this ended up wasting up many seconds. - Fixed 3D world being rendered while loading (frees up game thread cycles for throttled streaming) - UWorld::AllowLevelLoadRequests() was not allowing load requests to go through while an async load was in progress and the match had started. It now allows this as long as the world isn't being rendered (loading screen.) - Eliminated extra 2 second delay before loading screen is dismissed (in Athena only) - Note: A side effect of this change is that the progress bar may not update as smoothly on loading screen. We'll look at tuning the throttle settings if it ends up being a problem. [CODEREVIEW] ori.cohen #jira AT-1477 #ROBOMERGE-SOURCE: CL 3602061 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3601951 by Luke.Thatcher [FORTNITE] [PS4] [!] Fix memory stats in the old PS4 memory system - Physical memory stat now includes garlic and onion allocations. CPU OOMs will result in "AvailablePhysical" being close to 0. - Added garlic, onion and defrag stats to the platform memory stats struct. - Added fixed pool sizes to platform memory stats. - Modified the Fortnite heartbeat logging to include extra details of PS4 fixed sized pools. #jira FORT-52910 Change 3600340 by robomerge #ROBOMERGE-AUTHOR: wes.hunt All Fort analytics events now contain a GameState attribute indicating the active GameState ClassName when the event is sent. Added some new context to crashreporter to help identify Athena matches near and long term. * Near Term: GameNameSuffix - set via FCoreDelegates::CrashOverrideParamsChanged * Added bools to the params to indicate WHICH ones are changing * Allows you to set only some values, and clear them out. * Hooked up in FortGameState::PostInitializeComponents. * FortGameState clears it (for returning to main menu). * FortGameStateAthena sets it (for going into an Athena match). * Only does this when it's a true GameMode GameState instance (ie, not PIE) so PIE crashes aren't modified. * Long Term: GameStateName - set via FCoreDelegates::GameStateClassChanged. * This works for ANY crash on ANY game. * Hooked up in GameState::HandleMatchIsWaitingToStart. #jira AT-1457 #jira AT-519 [CODEREVIEW] peter.knepley,josh.markiewicz #ROBOMERGE-SOURCE: CL 3600278 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3597593 by Ben.Zeigler #jira FORT-50722 Fix issues where AssetBundles weren't being correctly updated during cook, which is blocking both Noland and Abercrombie Partial copy of CL #3402335 and #3526538 #robomerge rp, rn Change 3597577 by Luke.Thatcher [FORTNITE] [PS4] [~] Modified the way memory is allocated on Playstation to make more memory available to the CPU. - Previously the amount of texture memory wasn╞t fixed due to the way the defrag memory is allocated on PS4. This meant we had to have a significant amount of slack. - With the new configuration, we have a guaranteed texture memory pool, so the slack can be significantly smaller, meaning we can give more memory to the CPU, which is where most of our memory pressure is. #jira FORT-50825 #jira FORT-49688 #jira FORT-49695 #jira FORT-50054 Change 3596556 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Enable GC clustering for actors and blueprints in Fortnite - This shaves off about 10 ms on GC frames in Athena on PS4 (~52 ms -> 42 ms) - Clustering doesn't work on building actors because they're very dynamic, but general Fort static meshes and blueprints are clustered! - This gets us into the realm of shippability on console for very large UObject counts [FYI] bob.tellez,peter.knepley,michael.noland #jira AT-1440 #ROBOMERGE-SOURCE: CL 3596552 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3593994 by robomerge #ROBOMERGE-AUTHOR: mike.fricker Force largest distance field atlas size in Athena - We now force the largest distance field atlas size before preloading Athena content (512x512x1024 = 256 MB). This helps with load times because it's expensive to re-create this texture on consoles, and typically it gets resized over a dozen times. - Added new CVar "r.DistanceFields.ForceMaxAtlasSize" (defaults to zero) - Important: Currently we never "reset" this atlas texture. This will be a problem when going back to play Campaigns after preloading to play Athena. I will look into this soon! [CODEREVIEW] peter.knepley,marcus.wassmer,michael.noland,daniel.wright #jira AT-1477 #ROBOMERGE-SOURCE: CL 3593992 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592096 by robomerge #ROBOMERGE-AUTHOR: ben.salem Prototype of gauntlet memory soak test. Not fully fiinished, but want changes in tonight's cook so we can experiment on cooked build tomorrow morning. #jira FORT-0 #ROBOMERGE-SOURCE: CL 3592025 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3592085 by robomerge #ROBOMERGE-AUTHOR: mike.fricker HLOD: Added support for a fixed distance override via CVar - Use this to force all HLODs to transition at a specific distance, regardless of their TransitionSize/MinDrawDistance/LODDrawDistance - New CVar: r.HLOD.DistanceOverride (defaults to 0) - Fortnite uses 350m for this distance, fornow [CODEREVIEW] jurre.debaare #jira AT-1462 #ROBOMERGE-SOURCE: CL 3591929 in //Fortnite/Release-Prep/... #ROBOMERGE-BOT: FORTNITE (Release-Prep -> Main) Change 3587391 by Michael.Noland Fortnite: Lots of memory tracking stuff - Added memory logging to game state transitions and overall health tracking for the entire session - Added support for Gauntlet-based tests to Fortnite - Enabled the Gauntlet plugin (and fixed spaces instead of tabs in the .uproject file) - Added code to set gauntlet state based on the current subclass of AFortGameState - Added a base controller and a memory report controller (WIP, ported from equivalents in Paragon) - Updated FortniteClient to use MALLOC_LEAKDETECTION=1, PLATFORM_USES_FIXED_GMalloc_CLASS=0, and AllowASLRInShipping=false in Development builds (may enable them in Test builds in a future CL, to match Paragon) #jira FORT-50567 Change 3583307 by Peter.Knepley Need non-jittered ViewToClip matrix in order to do "after tonemapper" postprocess blendable material that's positioned in view space Modify the AttachScope material function to use "ViewSpaceTransformToClipSpace" instead of going back to world space first. This also means it can utilitize the ViewToClipNoAA matrix. #jira AT-733 Change 3582378 by Luke.Thatcher [FORTNITE] [~] Unify Xbox and PS4 scalability settings and device profiles. - All Xbox and PS4 r. CVars are overriden in their platform's Scalability.ini file. The device profile only selects sg. groups. - Fixed the Neo 4K profile for Fortnite. Previously players with 4K monitors would choose the Neo_4K profile, which looks worse than Neo, but still renders at 1080p. - Console specific settings have to live in the Base/Default .ini's, as the cooker doesn't load the console specific files. This is fixed in UE4 Main. #jira FORT-50206 Change 3580934 by Luke.Thatcher [FORTNITE] [PS4] [+] Support different garlic and onion heap sizes in the old memory system for base and neo. - Neo has 512 MB more direct memory than a base kit. - Increased the garlic heap size by 416 MB on Neo, and CPU heap by 96 MB. #jira FORT-50206 Change 3576664 by Bart.Hawthorne Re-enable Oodle and add Mac implementation. Also includes fixed oodle libraries by MichaelT. #jira FORT-49986 #tests Connected to PC server with editor -game build on Mac in Athena Change 3575671 by Nick.Darnell Athena - The gameplay ability system now supports adding Gameplay Cue's with params. Now using cues instead of gameplay effects in order to notify when the bandaging/shielding begin and end. THe new method should properly show and disappear on time, b/c it's all client side. Added a way in the Athena Context to easily hook gameplay "UI" cues that are rebroadcast from the Athena Pawn. #jira AT-644 Change 3575534 by Peter.Knepley Ability montage replication optimizations #jira AT-955 Change 3573305 by Lukasz.Furman disabled path section update when crowd simulated AI is moving through navlink, fixed AI getting stuck in some corners #jira FORT-49748 Change 3566775 by John.Abercrombie Optimizations from Dev-Athena - Tested with PIE & and 2 Player local server game #ue4-athena - (merge CLs 3345771 and 3363030 from Framework) - Refactored CharacterMovementComponent determination of net send rate when combining moves into a virtual function GetClientNetSendDeltaTime(). Added configurable values to GameNetworkManager under [/Script/Engine.GameNetworkManager]. For Fortnite, set unthrottled (<= 10 player) limit to 60Hz (from 90Hz), and trying throttled at 30Hz (from 45Hz). #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545535 by Zak.Middleton on 2017/07/19 20:15:17. #ue4-athena - (merge CL 3377054 from Framework) - Fix CharacterMovementComponent updated with very high delta time on server when initially joining. Make sure the ServerTimeStamp is initialized to current world time rather than zero to prevent large delta. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545452 by Zak.Middleton on 2017/07/19 18:57:45. #athena - If network smoothing mode is not linear, don't replicate ReplicatedServerLastTransformUpdateTimeStamp. Only AI use linear smoothing in FN. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3545559 by Zak.Middleton on 2017/07/19 20:47:18. #ue4-athena - Converted all RPCs on UCharacterMovementComponent to be on ACharacter instead, to avoid the bandwidth overhead of calling RPCs on a component. Existing overrides of _Implementation and _Validate functions should remain unchanged. If for some reason someone overrode the old RPC virtuals, those are now non-virtual on UCharacterMovementComponent but are still virtual on ACharacter. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3557564 by Zak.Middleton on 2017/07/26 20:13:43. #ue4-athena - Throttle character movement server corrections and acks to the client based on time since last adjustment. Cuts down on network traffic for character movement. Added configurable settings to control this. Set times to zero to disable this. - NetworkMinTimeBetweenClientAckGoodMove - NetworkMinTimeBetweenClientAdjustments - NetworkMinTimeBetweenClientAdjustmentsLargeCorrection - NetworkLargeClientCorrectionDistance #ue4-athena - Perf: (EditMerge CL 3492200 from Dev-Framework): Always reset the input array in AActor::GetComponents(), but do so without affecting allocated size. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561669 by Zak.Middleton on 2017/07/28 14:16:19. #ue4-athena - Perf: (EditMerge CL 3468253 from Dev-AnimPhys): Remove the need for calling constructors for physx PxRaycastHit in the dynamic hit result buffer. Saves 30% of the cost of doing small raycasts. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561672 by Zak.Middleton on 2017/07/28 14:17:12. #ue4-athena - Perf: (EditMerge CL 3359553 from Dev-Framework): Optimization in CharacterMovement tick to not extract transform values twice. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561674 by Zak.Middleton on 2017/07/28 14:18:04. #ue4-athena - Perf: (EditMerge CL 3426174 from Dev-Framework): 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. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561709 by Zak.Middleton on 2017/07/28 14:32:11. #ue4-athena - Perf: (EditMerge CL 3382054 from Dev-Framework): Optimize CharacterMovementComponent::GetPredictionData_Client_Character() and GetPredictionData_Server_Character() to remove virtual calls. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3561856 by Zak.Middleton on 2017/07/28 15:11:57. #ue4-athena - Use less bandwidth for CharacterMovement RPCs when the character is not standing on any component (ie during jumps and falling). Added separate "...NoBase()" versions of ServerMove() and ServerMoveDual(). Undid part of 3557564 and restored the CMC functions to be virtual, and removed virtual keyword from matching Character functions, so that overrides are in one consistent place. Also guarantees backwards compat for licensees. #AUTOMERGE using branch //Fortnite/Main-To-//Fortnite/Dev-Athena (reversed) of change#3564858 by Zak.Middleton on 2017/07/31 15:24:39. #jira Fort-1 Change 3562825 by Chris.Gagnon Added CommonCustomNavigation Widget, this widget can be used to capture navigation requests to handle in custom ways. #jira FORT-0 Change 3562098 by Josh.Markiewicz #UE4 Encryption token/ack changes - moved encryption token request/ack to delegates - moved FNetworkNotify to NetworkDelegates.h - moved connection logic out of GameInstance and back into networking code -- GameInstance sends an enum and the network code does the right thing based on that #review-3559694 @ryan.gerleve #tests PC dedicated server connections golden path and forced failures #jira FORT-0 Change 3559354 by Luke.Thatcher [FORTNITE] [PS4] [^] Merging (as edit) support for setting flip rate on PS4 (CLs 3555687 and 3558843) from //Fortnite/Dev-Athena/... to //Fortnite/Main/... - Allowed rates are now 60Hz, 30Hz and 20Hz. - Exposed by r.PS4FlipRate CVar, set to 60Hz by default. Requires r.Vsync 1. #jira FORT-49463 Change 3532644 by Jeff.Campeau Fix mapping current culture to movie audio channels using data table to map languages to track indices. Don't rewind cinematics (they all start from the begining because we load them and play them once). Seeks cause us to have to redecode video frames at a large perf cost. Delay cutscene playback by 0.5 seconds to give us time to build up a buffer of decoded video. (Temporary workaround for audio/video sync). Generic implementation for getting current languages in BP. Fix more issues with calling into media source functionality when using the source reader (potential hangs). #jira FORT-44376,FORT-48209,FORT-48040 #testedon Preflight from last night combined with Bob's changes from today clear all known issues. This change tested on Xbox and PC multiple times each. Change 3527761 by Chris.Gagnon Fixed various issues in the widget switcher, also added Advanced calls that allow the user to specify if activation/deactivation should occur. #jira FORT-47988, FORT-47984 Change 3525390 by Jeff.Campeau Remove media player log spam #jira FORT-47393 #testedon compiled client Change 3518692 by Chris.Gagnon Added CleanOperation Adding which will remove unneeded op combinations from the op queue. Also added the ability to suspend starting operation queue processing to allow complex operations to accumulate and in turn allow the Clean Op adding code to be effective. GameFeedback, and the widget switcer utilize this to avoid unnesacary activations of a screen that is immediately being deactivated. Root issue of the mentioned bug is that activation of the quest screen created a latent navigation du to the deferal of scrolling into view. This is still an issue in general, there isn't much we can do about it. Other than avoid activating a panel that will deactivated that frame as we did with the code changes in this CL. #jira FORT-47395 Change 3514658 by Jeff.Campeau Fixed a media player threading issue where the OnMediaOpened event could be called before the media Init script completed. Moved the event Cinematic used when setting up and playing media after media file load to use a delayed event from the MovieWidget so that it will always happen after the movie widget processing. Fixed an issue that could cause samples to leak in MfMedia plugin and cause ReadSample to lockup. Fixed an issue where a default texture is displayed for movies before the movie starts playing (the player may be active before the first frame of the video is decoded). Default is now all black as it is expected that this texture will be displayed for several frames. #jira FORT-46801 #testedon Xbox through rocket launch cinematic including vintertip for stairs, skill tree nodes, and victory result video Change 3507896 by Ryan.Gerleve Changed the net.UseEncryptionToken to be more useful and renamed it to net.AllowEncryption. This cvar, if 0, will prevent the PacketHandler from adding the configured encryption component, and prevent UPendingNetGame and AOnlineBeaconClient from filling out the EncryptionToken parameter of NMT_Hello - which prevents the extra encryption handshake connection step. #jira FORT-46878 #review-3507897 @josh.markiewicz Change 3503928 by Ryan.Gerleve Add safety checks around some of the encryption functionality. Fixes a server crash seen during load testing. #jira FORT-46772 #review-3503929 bob.tellez #robomerge ReleaseNext [CL 3673993 by Bob Tellez in Main branch]
2017-09-30 03:42:01 -04:00
const bool bUseConvexCollision = bGatherConvexGeometry || (BoxCollision.Num() > 0) || (CylinderCollision.Num() > 0);
if (IsTemplate() || !bUseConvexCollision)
{
return nullptr;
}
bool bContainedData = CookedFormatData.Contains(Format);
FByteBulkData* Result = &CookedFormatData.GetFormat(Format);
if (!bContainedData && CVarNavCollisionAvailable.GetValueOnAnyThread() != 0)
{
if (FPlatformProperties::RequiresCookedData())
{
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
UE_LOG(LogNavigation, Error, TEXT("Attempt to build nav collision data for %s when we are unable to. This platform requires cooked packages."), *GetPathName());
return nullptr;
}
TArray<uint8> OutData;
FDerivedDataNavCollisionCooker* DerivedNavCollisionData = new FDerivedDataNavCollisionCooker(Format, this);
Copying //UE4/Orion-Staging to //UE4/Dev-Main (//UE4/Orion-Staging @ 2979119, //Orion/Dev-General @2976565) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2976484 on 2016/05/12 by Jason.Bestimt #ROBOMERGE-AUTHOR: nick.atamas Added queueing to HUD Alerts so they don't clobber each other. Added input visualization so that keys show up in game. SRichTextBlock/UOrionRichTextBlock now have a MinDesiredWidth #test PIE #ROBOMERGE-SOURCE: CL 2976474 in //Orion/Release-0.26/... via CL 2976481 via CL 2976482 via CL 2976483 #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2976256 on 2016/05/12 by Zak.Middleton #ue4 - Fix for shipping build. #tests compiled Change 2976205 on 2016/05/12 by Zak.Middleton #ue4 - (Merge 2957866) Add MaxDepenetration for characters against geometry and pawns. #tests MP PIE PlayGo (Merging CL 2957866 using Framework->DevGeneral) Change 2976166 on 2016/05/12 by Daniel.Lamb Cooking optimziation to unsolicited markup saves 150 seconds paragon cook time. #test Cook paragon Change 2976161 on 2016/05/12 by Zak.Middleton #ue4 - Make sure LastUpdateLocation, Rotation, and Velocity are updated on client and server error corrections. ForcePositionUpdate should call PerformMovement regardless of velocity (there may be root motion or gravity effects). #tests PIE MP w/ real-world networking Change 2976092 on 2016/05/12 by Mieszko.Zielinski Modified adding dynamic subtrees to BT component so that we get a log info if it fails #UE4 #test golden path Change 2976001 on 2016/05/12 by Robert.Manuszewski Don't log to memory on dedicated servers #jira UE-30693 #test Cooked dedicated server and client Change 2975855 on 2016/05/12 by Lukasz.Furman fixed behavior tree serialization spawning duplicates of task services #tests BT editor Change 2975706 on 2016/05/12 by Daniel.Lamb Fixed redirect collector stats. #test Compile Change 2975636 on 2016/05/12 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge DUI @ CL 2975557 #RB:none #Tests:none [CodeReviewed]: matt.schembari, kerrington.smith, tony.oliva, jaymee.stanford, mona.huang, alex.conner, jacob.lawyer, paul.shank #ROBOMERGE-SOURCE: CL 2975635 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2975592 on 2016/05/12 by Zak.Middleton #ue4 - Add stat for SetHitResultFromShapeAndFaceIndex(). #tests PIE Change 2975589 on 2016/05/12 by Zak.Middleton #ue4 - Avoid filling temp variable unless in Editor builds. It's only used later in the function in Editor builds. #tests PIE Change 2975588 on 2016/05/12 by Zak.Middleton #ue4 - Minor tweak to avoid array read each loop iteration. #tests PIE Change 2975587 on 2016/05/12 by Zak.Middleton #ue4 - Add "IsPlayerController()" function to AController. Variable already existed, just wasn't exposed. #tests PIE Change 2975504 on 2016/05/12 by Daniel.Lamb Remove new stats system because it broke build. #test cook paragon Change 2975500 on 2016/05/12 by Daniel.Lamb Enable redirect timers so I can get stats from build machines. #test cook paragon. Change 2975367 on 2016/05/12 by Jason.Bestimt #ROBOMERGE-AUTHOR: david.nikdel #OGF #CatalogService #OSS #Localization - Flush the cached offers/items in CatalogServiceMcp when the culture changes since they contain localized text - Flush the cached virtual catalog offers/items in McpCatalogHelper when the culture changes since they contain localized text - Replaced SetForceCatalogRefresh with ClearCache per CR with SamZ (will require Launcher fixup) [CodeReviewed]: Sam.Zamani, Matt.Kuhlenschmidt #RB: Sam.Zamani #TESTS: storefront w/ language change #ROBOMERGE-SOURCE: CL 2975366 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2975209 on 2016/05/12 by Simon.Tovey Fixed initialization order warning. #tests none Change 2975200 on 2016/05/12 by Simon.Tovey Translucency GPU time stats for automation. Refactored separate translucency gpu timer to more general helper class and used it to also time regular translucency. Feeding both of these into a stat to help art identify poorly performing VFX for more detailed investigation. There are occasional spikes when the GPU is starved but overall the data out seems good. #tests GoldenPath, Editor, Auto downsampling works, new stat produces reasonable data. Change 2974984 on 2016/05/11 by Mieszko.Zielinski Fixed a bug in graph-a-star heuristics' calculation #UE4 #test golden path Change 2974916 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 26 @ CL 2974578 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2974915 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974869 on 2016/05/11 by Ben.Marsh BuildGraph: Add a MergeTelemetryWithPrefix="..." parameter to the <Command> task which allows merging the telemetry data from a child UAT run, adding a given prefix to all the key names. #tests none Change 2974673 on 2016/05/11 by Mieszko.Zielinski Fix to BT not stopping if "StopTree" called while BT was waiting for a task to latently abort #UE4 (change by ?ukasz.Furman) #test golden path Change 2974581 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: matt.kuhlenschmidt Merged CL 2974565 from Release-.26 -> Main: Fixed loc region not saving in shipping builds Partially fixed store not refreshing when changing regions. Real money currency items are pending additional fixes #ROBOMERGE-SOURCE: CL 2974578 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974444 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: richard.fawcett Reimplement support for specifying BuildPatchTool version used in chunking This is now possible after Ben Marsh's fix to BuildGraph with CL 2974407. #tests none #ROBOMERGE-SOURCE: CL 2974441 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974408 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: ben.marsh BuildGraph: Fix support for variable expansion in user-defined enum types. Enums in the schema are now represented as the union of valid values and a regex matching a balanced property expansion string, which still validates/autocompletes cleanly in Visual Studio. #tests none [CodeReviewed] Richard.Fawcett #ROBOMERGE-SOURCE: CL 2974407 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974392 on 2016/05/11 by Daniel.Lamb Optimizing resolve string asset reference resolution. Added timing stats (disabled by default). #test Cook paragon. Change 2974349 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: richard.fawcett Back out changelist 2974298. An issue with the BuildGraph system has prevented this change from working on the build farm. #tests none #ROBOMERGE-SOURCE: CL 2974347 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974299 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: richard.fawcett Add support for chunking builds with the pre-release version of BuildPatchTool. #tests None. This code will be tested by creating a build on the build farm immediately after submission. #ROBOMERGE-SOURCE: CL 2974298 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974277 on 2016/05/11 by Lina.Halper Fix up of retargeting when it skips replacing nested reference #tests: retargeting anim BP Change 2974210 on 2016/05/11 by Bart.Bressler Merging Oodle changes from Dev-Networking Change 2939167 on 2016/04/10 by John.Barrett Updated packet bit termination code, so that both UNetConnection's and the PacketHandler use a termination bit (required for both PacketHandler/UNetconnection, as HandlerComponent's such as Oodle, are byte-aligned and do not preserve packet bit size). Added new 'stat packet' stats group, for tracking reserved packet bits. Added '-NoPacketHandler' commandline parameter, for disabling the PacketHandler and all HandlerComponent's (including stateless handshake) - restoring netcode to pre-PacketHandler state. Removed PacketHandler 'packet overhead' method of packet bit size calculation - replaced with termination bit. Still partially used for reserving bits within packets (but renamed to avoid conflict with other 'PacketOverhead' variable). Refactored/consolidated some PacketHandler code. Added more stringent bounds checking on packet sizes. Change 2939168 on 2016/04/10 by John.Barrett Updated Oodle to support new packet bit-termination code. Added Oodle protocol support for selective packet compression (packets can now be sent uncompressed - game code will require a hook for this) - required for new bit-based netcode (Oodle outputs byte-aligned data, allowing compressed data to exceed size of uncompressed data - and thus, maximum packet size if not sent uncompressed - in rare edge cases). Added '-CompressionTest' commandline parameter to Oodle dictionary generation commandlet, which reserves a portion of captured packets, for determining the compression savings percentage. Added '-OodleDebugDump' commandline parameter, which disables normal dictionary generation, and converts packet captures into a .bin file, which is compatible with the Oodle 'example_packet.cpp' code. Added temporary security bandaids to Oodle code, based on report that Luigi Auriemma put together, which deals with potential weaknesses in the Oodle API Added 'stat oodle' stats for tracking failed attempts at compressing packets. Change 2942964 on 2016/04/10 by Ryan.Gerleve Fix broken indentation/formatting Change 2958260 on 2016/04/27 by Bart.bRessler Add branch name and changelist to oodle packet capture filenames. Change 2964360 on 2016/05/03 by John.Barrett Updated Oodle to support using a dictionary and capturing packets at the same time. The dictionary is now always loaded, if specified, and whenever -OodleCapturing is on the commandline, packets are captured alongside the active dictionary. Added several debug commands, to aid with testing compression performance (not QA-ready; only works with 1 player on a server): "Oodle Compression On/Off" - enables/disables packet compression (but still decompresses received compressed packets) "Oodle Dictionary Unload/Load" - unloads/loads the dictionary files, to allow releasing the files for dictionary generation, and reloading the new dictionary. "Oodle Capture On/Off" - Enables/Disables packet capturing at runtime - requires '-OodleCapturing' on commandline. "Oodle ResetStats" - resets the 'stat oodle' stat counters. The NetcodeUnitTest plugin should be enabled, so that these commands can automatically execute on the server as well, as needed. Change 2964553 on 2016/05/03 by Bart.Bressler Add process ID to oodle capture filenames Change 2966247 on 2016/05/04 by John.Pollard Oodle 2.1.5 SDK Change 2968761 on 2016/05/06 by Bart.Bressler - Added changelist number as parameter to most command line tasks to filter captures by their changelist number (use "all" to get everything) - Moved a bunch of the file searching/processing code outside of the tasks themselves so that the tasks all just operate to an array of capture files, this makes it easier to create new command line options - When looking for capture files, we will now recursively search subdirectories Change 2970529 on 2016/05/09 by Bart.Bressler Add an optional "CapturePercentage" command line parameter that has a percentage chance of generating capture files per connection Change 2970874 on 2016/05/09 by Bart.Bressler - Turn on OODLE_DEV_SHIPPING in the Orion server shipping config so that captures can be generated in shipping builds - Link to version 215 of oodle Change 2971233 on 2016/05/09 by Bart.Bressler Update Oodle DLLs in Orion Change 2971362 on 2016/05/09 by Bart.Bressler Create script for building an oodle dictionary out of capture files in an arbitrary location Change 2972176 on 2016/05/10 by Bart.Bressler Update oodle references to version 215 in OodleHandlerComponent.Build.cs #tests used solo vs. ai to test oodle captures and using them Change 2974035 on 2016/05/11 by Simon.Tovey Adding fx.ParticleCollisionIgnoreInvisibleTime to replace hard coded time. This is the time a PSC needs to be invisible for to have all it's collisions ignored. This is potentially the cause of a bug Tim et al are seeing. #tests Editor, Can be used to repro/fix the issue. Change 2973985 on 2016/05/11 by Lina.Halper Retargeting fix with editor saving issue #tests: retargeting Change 2973695 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 26 @ CL 2973469 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2973694 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2973679 on 2016/05/11 by Graeme.Thornton UAT parameter -signedpak now no longer implies -pak #tests win64 cooked client. checked that pak generation works as expected through project launcher Change 2973588 on 2016/05/11 by Simon.Tovey OR-21033 - Get physical material from particle collision event exposed in Cascade / Blueprint Particles can now receive collision events selectively based upon the phyisics material of the hit. Physics material is passed through the event and can be accessed in BPs. The Event Receiver Spawn node also now has an array of Allowed and Banned phys materials. #tests Editor and game. Coudln't test cooked as having unrelated crashes in cooked games. Shouldn't be any cooked/uncooked issues here. Change 2973394 on 2016/05/11 by bruce.nesbit Fixed couple of shadow vars #tests compiled Change 2973335 on 2016/05/11 by Andrew.Grant Warning fix #tests compiled Change 2973308 on 2016/05/10 by Dmitry.Rekman Add "unplayable condition" reporting. - The server will report an unplayable condition by creating a local file (under Saved). - An external script can possibly notice this and, applying its own logic on % of servers reporting it, profile or shutdown the whole machine. - Report file is to be deleted by an external script. #tests Compiled and ran Linux server, subjected it to various hitches. Change 2973235 on 2016/05/10 by Zak.Middleton #ue4 - Removed allocs after initial spawn from client saved move processing in character movement. #tests PIE multiplayer w/ Bots Change 2973157 on 2016/05/10 by Olaf.Piesche Merging CL 2973112 from //UE4/Dev-Rendering->//Orion/Dev-General Providing particle source and target for beam emitters #tests editor game PC Change 2972715 on 2016/05/10 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 26 @ CL 2972681 #RB: none #Tests:none #ROBOMERGE-SOURCE: CL 2972712 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2972678 on 2016/05/10 by Mieszko.Zielinski Fixed babysitter bot not avoiding enemy towers when pathfinding back to base #Orion #jira OR-18590 #test golden path Change 2972595 on 2016/05/10 by Lina.Halper Animation Retargeting fix for blendspaces #code review: Benn.Gallagher, Martin.Wilson #tests: retargeting anim BP Change 2972282 on 2016/05/10 by Daniel.Lamb Optimized string asset reference resolution slightly to help get back missing 10 minutes from paragon cook. #test cook paragon. Change 2972260 on 2016/05/10 by Laurent.Delayen Fixed crash in UCharacterMovementComponent::HasRootMotionSources(). #tests Chains pull not crashing anymore. Change 2972241 on 2016/05/10 by Frank.Fella UMG - Fixes for material animation copied from 4.12. #RB Matt K. #TESTS Struct materials can now be animated and animated materials are named nicely. Change 2971643 on 2016/05/09 by Dmitry.Rekman Add reporting of "zero load" frame times (OR-21035). - Added a thread that does nothing but sleeps and counts how often it missed the target FPS. - Added an analytics event ServerZeroLoadFrameTimeDistribution that is sent at the end of the match. - Server only. #tests Compiled and ran Linux server on a compatible content, played few matches in a row. Change 2971544 on 2016/05/09 by Ben.Marsh EC: Use a full path to the telemetry file, to account for UAT switching directories. Change 2971532 on 2016/05/09 by Wes.Hunt Alter the cook stats hierarchical profile data to reflect the latest cook changes. #tests none Change 2971527 on 2016/05/09 by Ben.Marsh UAT: Move telemetry object into CommandUtils, so we can add stats from anywhere. #tests none Change 2971461 on 2016/05/09 by David.Ratti Fix issues with mesh swap skins: -Front end intro animations not playing -In game spawn animations not playing -Some attachment weirdness (twinblast) #tests golden path Change 2971460 on 2016/05/09 by David.Ratti Fallback to Target actor if there is no instigating actor in the GAmeplayCue parameters when determining if we should play "local only" effects #tests pie Change 2971364 on 2016/05/09 by Ben.Marsh EC: Add support for adding custom telemetry data from UAT scripts, which gets piped through to the trends panel in EC. #tests none Change 2971245 on 2016/05/09 by Dmitry.Rekman Add a "hitchhunter" log message to catch hitches while sleeping. #tests Compiled and ran Linux server on a compatible content. Change 2971196 on 2016/05/09 by jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2971139 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2971168 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) #ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human. //Orion/Dev-General/OrionGame/Content/Characters/Heroes/Coil/Audio/Body/Pixie_Cranking_Loop_Cue.uasset - can't branch exclusive file already opened #CodeReview: david.nikdel, jason.bestimt Change 2971113 on 2016/05/09 by Dmitry.Rekman UdpMessaging: Fixed broken filters for when to enable UDP transport. - Redoing MaxP's change from Dev-Sequencer (CL 2963357). - Reduces number of threads spawned by the server. #tests Compiled Linux server, ran it on a compatible content. Change 2971040 on 2016/05/09 by jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2970990 #RB:none #Tests:none [CodeReviewed]: jon.lietz #ROBOMERGE-SOURCE: CL 2971027 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) #ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human. #CodeReview: david.nikdel, jason.bestimt Change 2970555 on 2016/05/09 by Ben.Marsh BuildGraph: Only show warnings and errors for the SavePackage log during cooks. Prevents redundant display of information that's already in the Cook log. #tests preflight here: https://ec-01.epicgames.net/commander/link/jobDetails/jobs/6443796 Change 2970507 on 2016/05/09 by David.Ratti Support for linking passive abilities to a key binded ability. E.g., allow a passive ability to be unlocked and leveled up in step with a key binded ability. Cleaned up the TryLevel/CanLevelUp code a bit: moved to Orion Ability System Component #tests pie Change 2970414 on 2016/05/09 by Graeme.Thornton Don't take a copy of the child tags array when doing UGameplayTagsManager::FindTagNode, just take a const& #tests win64 client golden path Change 2969729 on 2016/05/06 by Mieszko.Zielinski Fixed a dumb mistake in a conditional expresion in UNavigationQueryFilter::GetQueryFilter #UE4 #test golden path Change 2969675 on 2016/05/06 by Mieszko.Zielinski Implemented "meta navigation filter" that can fetch a filter class based on given agent #UE4 Added NavFilter_AIControllerDefault that fetched DefaultNavigationFilter from AIController Reverted hack-feature that supplied same functionality to EQS #test golden path Change 2969652 on 2016/05/06 by Michael.Noland HLOD: Changed UI gating code so that whether or not a LOD Actor is valid is based on the presence of at least two static mesh components, rather than at least two actors (to improve handling when including BPs) - Repurposed HasValidSubActors for this check, and introduced HasAnySubActors() for the existing uses as this better matches the intent of how the function was used #tests Added a single BP containing 7 mesh components to a new ALODActor and verified that it allowed a proxy to be generated Change 2969651 on 2016/05/06 by Michael.Noland Simplygon: Added time taken for simplygon mesh reduction to the log message #tests Simplified a LOD cluster and inspected the log Change 2969604 on 2016/05/06 by Uriel.Doyon Changed default value to true for UParticleModuleVectorFieldLocal::bUseFixDT. #tests confirmed that default value has changed for old assets, while allowing override. Change 2969418 on 2016/05/06 by jason.bestimt #ROBOMERGE-AUTHOR: andrew.grant Fixed unconverted char string being passed as part of build info #tests ran & verified patch check passes #ROBOMERGE-SOURCE: CL 2969417 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2968817 on 2016/05/06 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2968572 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2968813 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2968383 on 2016/05/05 by Mieszko.Zielinski Added "default navigation filter" to AIController #UE4 Also, made EQS take advantage of that #test golden path Change 2968225 on 2016/05/05 by John.Pollard Add sanity checks and more info to help track down possible memory corruption #tests Networking, replication Change 2967903 on 2016/05/05 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2967827 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2967902 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2967899 on 2016/05/05 by Lina.Halper Merged change of 2956152 Remove invalid ensure - this didn't work if you have composite inside. #tests: none Change 2967870 on 2016/05/05 by Andrew.Grant Fix for OR-20731 (gamever crashes client) #tests gamever at console with -game Change 2967606 on 2016/05/05 by Wes.Hunt Tweaked output log message for HTTP module shutdown. #tests none Change 2967359 on 2016/05/05 by Wes.Hunt HttpManager will log outstanding requests on shutdown so people can debug shutdown issues and ensure their requests get flushed properly. Also changed default LogHttp logging level to display so these messages can be shown by default without using warning level. #tests ran editor build and queued up an event using the console command, then quit immediately. the log indeed showed that HttpManager had to wait at least 0.5 seconds for the request to complete. Change 2966987 on 2016/05/05 by Dmitry.Rekman Fix editor build. #tests Compiled Win64 editor. Change 2966977 on 2016/05/05 by Dmitry.Rekman Added collecting and reporting periodic server frame time distribution. - Added generic FHistogram class and necessary analytic events. - Also added reporting hostname (OR-20842). #tests Built Linux server and ran a few matches on a compatible content. Change 2966920 on 2016/05/04 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2966805 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2966919 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2966778 on 2016/05/04 by Michael.Noland Rendering: Fixed shadow variable warning in GPUProfiler #tests Compiled and tested GPUProfiler command Change 2966769 on 2016/05/04 by Mieszko.Zielinski Fixed GraphAStar not resetting the output path before fillinf it with results #UE4 #test golden path Change 2966704 on 2016/05/04 by Michael.Noland Rendering: Added triangle and draw call summaries to ProfileGPU output, broken up by asset and material - This is controlled by r.ProfileGPU.PrintAssetSummary, which defaults to 1, but you really need r.ShowMaterialDrawEvents 1 enabled as well for a complete picture - It can also output a summary line for speciifc asset names using a comma separated list in r.ProfileGPU.AssetSummaryCallOuts (e.g., "LOD,HeroName") #tests Used ProfileGPU a number of times Change 2966696 on 2016/05/04 by Michael.Noland Engine: Embedded FPS chart preamble/postamble/row .html files into ChartCreation.cpp to permanently solve packaging woes #tests Tested FPS charts in an uncooked and cooked build #jira OR-19713 Change 2966336 on 2016/05/04 by Lukasz.Furman fixed jungle minions unable to reach spawn locations when camp resets #jira OR-20700 #tests jungle camp POC Change 2965948 on 2016/05/04 by David.Ratti Changes to how passive abilities activate -Passives now continually try to activate by default rather than only on spawn Support for Status.Immortal -Prevents death, fies AbilityTriggerEvent.ImmortalProc when this happens. -Clamps health to 1. Fixed bug in muriel passive where ShieldHealthRegen would be left in the world where muriel died. Fixed bunch of crap in GA_OnSpawn that was causing desync on client at start of match #tests multi pie Change 2965870 on 2016/05/04 by Ryan.Gerleve Duplicated fix from Release-4.12 by marc.audy, CL 2960819: Owned components are once again referenced by their Owning actor for GC purposes #jira UE-29131 #tests golden path Change 2965798 on 2016/05/04 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2965789 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2965796 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2965220 on 2016/05/03 by Dmitry.Rekman Log instance id and system id (OR-20782). - These ids get reported in multiple analytics events, having them logged is helpful for quickly mapping events to the log file. #tests Compiled Linux server, ran on compatible client. Change 2964907 on 2016/05/03 by Jason.Bestimt #ORION_DG - Merge MAIN @ CL 2964858 #RB:none #Tests:none Change 2964530 on 2016/05/03 by Laurent.Delayen Renamed GetSlotRootMotionWeight to GetSlotNodeGlobalWeight and made it double buffered to it's safe to access anytime. Added GetSlotMontageGlobalWeight() to get the Global Weight of a montage being played on a Slot. (Also double buffered). Added GetInstanceMachineWeight() to get Global Weight of a State Machine in the AnimGraph. (Also double buffered) Added FAnimInstanceProxy::GetStateMachineIndexAndDescription to avoid searching through the AnimNodeProperties twice. #tests Chains full feature system in PIE. Change 2964498 on 2016/05/03 by Frank.Fella DecalComponent - Fix visibility so that it behaves like other scene components with regard to the editor visibility, component visibility, and actor hidden in game flags. #RB Andrew Rodham #TESTS Visibility for decals works like other scene components in the editor, and their visibility can now be animated properly by sequencer. Change 2964428 on 2016/05/03 by Benn.Gallagher Fixed stale clothing chunk/section references after container realloc in editor #tests editor Change 2964316 on 2016/05/03 by bruce.nesbit Banner revisions Banners now use components for various banner items Banners can now be enabled when killing a hero. #tests PIE+Game Change 2964187 on 2016/05/03 by Jon.Lietz Speeding up the tag count check in UAbilitySystemComponent::RegisterAndCallGameplayTagEvent() - Remove the call to GetAggregatedStackCount and creating a FGameplayEffectQuery every time we call RegisterAndCallGameplayTagEvent - Added GetTagCount to the UAbilitySystemComponent that will call GetTagCount on the GameplayTagCountContainer #RB DanY #tests JIP shadow pad still works. Change 2964136 on 2016/05/03 by Laurent.Delayen Fix crash while switching tabs using Persona. #tests not crashing anymore. Change 2964083 on 2016/05/03 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2963929 [CodeReviewed]: andrew.grant HTTP Manager has larger stack size (1024) #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2964080 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2963771 on 2016/05/02 by Nick.Atamas Setting a desired size scale invalidates layout and volatility. #test none Change 2963555 on 2016/05/02 by Rob.Cannaday Fix PS4 Orion players being able to whisper chat with non-Orion players #jira OR-20626 #tests chat with launcher, fortnite Change 2963387 on 2016/05/02 by Laurent.Delayen Added GatherDebugData to FABRIK node. #tests showdebug animation works on Chains now. Change 2963331 on 2016/05/02 by Jon.Lietz fixing compile error, dont need the clamp just the ternary on the EventType and pass down the tag count or 1. #RB none #tests compiles Change 2963106 on 2016/05/02 by Rob.Cannaday Increase HTTP thread's stack size to 128k We discovered a stack overflow when the stack size was 64kb in LavasoftTcpService64.dll (Ad-Aware's Lavasoft Web Companion) #tests log in Change 2963047 on 2016/05/02 by Jon.Lietz OR-20206 for JIP we need to call the bound function if we already have the tag on reconnect. - adding a new function in UAbilitySystemComponent, RegisterAndCallGameplayTagEvent this will bind the passed in delegate and if the ability system has that tag already will execute the delegate. #RB Dave.Ratti #test shadow pad, slow, stun and root still trigger and trigger for JIP players. Change 2962836 on 2016/05/02 by jason.bestimt #ROBOMERGE-AUTHOR: andrew.grant [NULL MERGE] Duplicating 2961899 - Fix minimal code builds for Linux not overwriting files [CodeReviewed] Ben.Marsh #ROBOMERGE-SOURCE: CL 2962812 in //Orion/Release-0.24.2/... via CL 2962830 via CL 2962833 via CL 2962834 via CL 2962835 #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2962570 on 2016/05/02 by Jason.Bestimt #ORION_MAIN - Merge MAIN @ CL 2962544 #RB:none #Tests:none Change 2962552 on 2016/05/02 by Ben.Marsh Avoid output of warnings containing the string "error:" (and causing the EC post processor to fail the build) if posting build info has a human-readable error message instead. Output should probably be changed to parse out/sanitize the actual failure message if it's meant to retry and succeed, but this will stop failures caused by multiple builds being posted with the same build version. #tests none Change 2962506 on 2016/05/02 by Ben.Marsh Add a version string to identify a given build (FApp::GetBuildVersion()/BUILD_VERSION) which is distinct from the engine version. Defaults to <Escaped Branch Name>-CL-<Changelist>, but can be overriden by specifying a -Build=... argument to UpdateLocalVersion or the "Build" attribute to the SetVersion BuildGraph task. #tests Preflighted Win64 client/server build (P:\Builds\Orion\++Orion+Dev-General-CL-2962228-PF-2945494-6398155-PF-2945494-6398155) and loaded into Agora. Checked that version strings appear correctly in generated executables. Change 2962228 on 2016/04/30 by Dmitry.Rekman Move processing HTTP requests into separate thread (OR-20723). - First iteration of the implementation, pending implementing feedback. - Adds a separate thread for CurlHttp where actual processing is performed. - Coded by RobC, post-processed by me. #tests Compiled Linux server and Windows client, ran them on compatible content, played a match. Change 2961899 on 2016/04/29 by Ben.Marsh BuildGraph: Fix minimal Linux server builds not overwriting the existing executables, by adding an "Overwrite" parameter into the staging task. Windows exe-only patches already happen to bypass this bug by deleting the Binaries/Win64 directory (designed to remove any configurations that weren't built this time), but could still fail if changes had been made to some other staged binaries. #tests preflighted code-only build against DG CL 2960870 and compared output (P:\Builds\Orion\++Orion+Dev-General-CL-2961878-PF-2961895-6393603) Change 2961587 on 2016/04/29 by Daniel.Lamb Redirector doesn't fire callback if it fails to be loaded. #test Cook orion. Change 2961458 on 2016/04/29 by Wes.Hunt Cooker Stats improvements. Also removed some old UBT telemetry that was not being used. #tests many cooks of orion Change 2961136 on 2016/04/29 by Daniel.Lamb Readded caching of platform data into postload of materials. #test Cook paragon. [CL 2979220 by Ben Marsh in Main branch]
2016-05-16 16:20:52 -04:00
if (DerivedNavCollisionData->CanBuild())
{
Copying //UE4/Orion-Staging to //UE4/Dev-Main (//UE4/Orion-Staging @ 2979119, //Orion/Dev-General @2976565) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2976484 on 2016/05/12 by Jason.Bestimt #ROBOMERGE-AUTHOR: nick.atamas Added queueing to HUD Alerts so they don't clobber each other. Added input visualization so that keys show up in game. SRichTextBlock/UOrionRichTextBlock now have a MinDesiredWidth #test PIE #ROBOMERGE-SOURCE: CL 2976474 in //Orion/Release-0.26/... via CL 2976481 via CL 2976482 via CL 2976483 #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2976256 on 2016/05/12 by Zak.Middleton #ue4 - Fix for shipping build. #tests compiled Change 2976205 on 2016/05/12 by Zak.Middleton #ue4 - (Merge 2957866) Add MaxDepenetration for characters against geometry and pawns. #tests MP PIE PlayGo (Merging CL 2957866 using Framework->DevGeneral) Change 2976166 on 2016/05/12 by Daniel.Lamb Cooking optimziation to unsolicited markup saves 150 seconds paragon cook time. #test Cook paragon Change 2976161 on 2016/05/12 by Zak.Middleton #ue4 - Make sure LastUpdateLocation, Rotation, and Velocity are updated on client and server error corrections. ForcePositionUpdate should call PerformMovement regardless of velocity (there may be root motion or gravity effects). #tests PIE MP w/ real-world networking Change 2976092 on 2016/05/12 by Mieszko.Zielinski Modified adding dynamic subtrees to BT component so that we get a log info if it fails #UE4 #test golden path Change 2976001 on 2016/05/12 by Robert.Manuszewski Don't log to memory on dedicated servers #jira UE-30693 #test Cooked dedicated server and client Change 2975855 on 2016/05/12 by Lukasz.Furman fixed behavior tree serialization spawning duplicates of task services #tests BT editor Change 2975706 on 2016/05/12 by Daniel.Lamb Fixed redirect collector stats. #test Compile Change 2975636 on 2016/05/12 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge DUI @ CL 2975557 #RB:none #Tests:none [CodeReviewed]: matt.schembari, kerrington.smith, tony.oliva, jaymee.stanford, mona.huang, alex.conner, jacob.lawyer, paul.shank #ROBOMERGE-SOURCE: CL 2975635 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2975592 on 2016/05/12 by Zak.Middleton #ue4 - Add stat for SetHitResultFromShapeAndFaceIndex(). #tests PIE Change 2975589 on 2016/05/12 by Zak.Middleton #ue4 - Avoid filling temp variable unless in Editor builds. It's only used later in the function in Editor builds. #tests PIE Change 2975588 on 2016/05/12 by Zak.Middleton #ue4 - Minor tweak to avoid array read each loop iteration. #tests PIE Change 2975587 on 2016/05/12 by Zak.Middleton #ue4 - Add "IsPlayerController()" function to AController. Variable already existed, just wasn't exposed. #tests PIE Change 2975504 on 2016/05/12 by Daniel.Lamb Remove new stats system because it broke build. #test cook paragon Change 2975500 on 2016/05/12 by Daniel.Lamb Enable redirect timers so I can get stats from build machines. #test cook paragon. Change 2975367 on 2016/05/12 by Jason.Bestimt #ROBOMERGE-AUTHOR: david.nikdel #OGF #CatalogService #OSS #Localization - Flush the cached offers/items in CatalogServiceMcp when the culture changes since they contain localized text - Flush the cached virtual catalog offers/items in McpCatalogHelper when the culture changes since they contain localized text - Replaced SetForceCatalogRefresh with ClearCache per CR with SamZ (will require Launcher fixup) [CodeReviewed]: Sam.Zamani, Matt.Kuhlenschmidt #RB: Sam.Zamani #TESTS: storefront w/ language change #ROBOMERGE-SOURCE: CL 2975366 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2975209 on 2016/05/12 by Simon.Tovey Fixed initialization order warning. #tests none Change 2975200 on 2016/05/12 by Simon.Tovey Translucency GPU time stats for automation. Refactored separate translucency gpu timer to more general helper class and used it to also time regular translucency. Feeding both of these into a stat to help art identify poorly performing VFX for more detailed investigation. There are occasional spikes when the GPU is starved but overall the data out seems good. #tests GoldenPath, Editor, Auto downsampling works, new stat produces reasonable data. Change 2974984 on 2016/05/11 by Mieszko.Zielinski Fixed a bug in graph-a-star heuristics' calculation #UE4 #test golden path Change 2974916 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 26 @ CL 2974578 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2974915 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974869 on 2016/05/11 by Ben.Marsh BuildGraph: Add a MergeTelemetryWithPrefix="..." parameter to the <Command> task which allows merging the telemetry data from a child UAT run, adding a given prefix to all the key names. #tests none Change 2974673 on 2016/05/11 by Mieszko.Zielinski Fix to BT not stopping if "StopTree" called while BT was waiting for a task to latently abort #UE4 (change by ?ukasz.Furman) #test golden path Change 2974581 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: matt.kuhlenschmidt Merged CL 2974565 from Release-.26 -> Main: Fixed loc region not saving in shipping builds Partially fixed store not refreshing when changing regions. Real money currency items are pending additional fixes #ROBOMERGE-SOURCE: CL 2974578 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974444 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: richard.fawcett Reimplement support for specifying BuildPatchTool version used in chunking This is now possible after Ben Marsh's fix to BuildGraph with CL 2974407. #tests none #ROBOMERGE-SOURCE: CL 2974441 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974408 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: ben.marsh BuildGraph: Fix support for variable expansion in user-defined enum types. Enums in the schema are now represented as the union of valid values and a regex matching a balanced property expansion string, which still validates/autocompletes cleanly in Visual Studio. #tests none [CodeReviewed] Richard.Fawcett #ROBOMERGE-SOURCE: CL 2974407 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974392 on 2016/05/11 by Daniel.Lamb Optimizing resolve string asset reference resolution. Added timing stats (disabled by default). #test Cook paragon. Change 2974349 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: richard.fawcett Back out changelist 2974298. An issue with the BuildGraph system has prevented this change from working on the build farm. #tests none #ROBOMERGE-SOURCE: CL 2974347 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974299 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: richard.fawcett Add support for chunking builds with the pre-release version of BuildPatchTool. #tests None. This code will be tested by creating a build on the build farm immediately after submission. #ROBOMERGE-SOURCE: CL 2974298 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974277 on 2016/05/11 by Lina.Halper Fix up of retargeting when it skips replacing nested reference #tests: retargeting anim BP Change 2974210 on 2016/05/11 by Bart.Bressler Merging Oodle changes from Dev-Networking Change 2939167 on 2016/04/10 by John.Barrett Updated packet bit termination code, so that both UNetConnection's and the PacketHandler use a termination bit (required for both PacketHandler/UNetconnection, as HandlerComponent's such as Oodle, are byte-aligned and do not preserve packet bit size). Added new 'stat packet' stats group, for tracking reserved packet bits. Added '-NoPacketHandler' commandline parameter, for disabling the PacketHandler and all HandlerComponent's (including stateless handshake) - restoring netcode to pre-PacketHandler state. Removed PacketHandler 'packet overhead' method of packet bit size calculation - replaced with termination bit. Still partially used for reserving bits within packets (but renamed to avoid conflict with other 'PacketOverhead' variable). Refactored/consolidated some PacketHandler code. Added more stringent bounds checking on packet sizes. Change 2939168 on 2016/04/10 by John.Barrett Updated Oodle to support new packet bit-termination code. Added Oodle protocol support for selective packet compression (packets can now be sent uncompressed - game code will require a hook for this) - required for new bit-based netcode (Oodle outputs byte-aligned data, allowing compressed data to exceed size of uncompressed data - and thus, maximum packet size if not sent uncompressed - in rare edge cases). Added '-CompressionTest' commandline parameter to Oodle dictionary generation commandlet, which reserves a portion of captured packets, for determining the compression savings percentage. Added '-OodleDebugDump' commandline parameter, which disables normal dictionary generation, and converts packet captures into a .bin file, which is compatible with the Oodle 'example_packet.cpp' code. Added temporary security bandaids to Oodle code, based on report that Luigi Auriemma put together, which deals with potential weaknesses in the Oodle API Added 'stat oodle' stats for tracking failed attempts at compressing packets. Change 2942964 on 2016/04/10 by Ryan.Gerleve Fix broken indentation/formatting Change 2958260 on 2016/04/27 by Bart.bRessler Add branch name and changelist to oodle packet capture filenames. Change 2964360 on 2016/05/03 by John.Barrett Updated Oodle to support using a dictionary and capturing packets at the same time. The dictionary is now always loaded, if specified, and whenever -OodleCapturing is on the commandline, packets are captured alongside the active dictionary. Added several debug commands, to aid with testing compression performance (not QA-ready; only works with 1 player on a server): "Oodle Compression On/Off" - enables/disables packet compression (but still decompresses received compressed packets) "Oodle Dictionary Unload/Load" - unloads/loads the dictionary files, to allow releasing the files for dictionary generation, and reloading the new dictionary. "Oodle Capture On/Off" - Enables/Disables packet capturing at runtime - requires '-OodleCapturing' on commandline. "Oodle ResetStats" - resets the 'stat oodle' stat counters. The NetcodeUnitTest plugin should be enabled, so that these commands can automatically execute on the server as well, as needed. Change 2964553 on 2016/05/03 by Bart.Bressler Add process ID to oodle capture filenames Change 2966247 on 2016/05/04 by John.Pollard Oodle 2.1.5 SDK Change 2968761 on 2016/05/06 by Bart.Bressler - Added changelist number as parameter to most command line tasks to filter captures by their changelist number (use "all" to get everything) - Moved a bunch of the file searching/processing code outside of the tasks themselves so that the tasks all just operate to an array of capture files, this makes it easier to create new command line options - When looking for capture files, we will now recursively search subdirectories Change 2970529 on 2016/05/09 by Bart.Bressler Add an optional "CapturePercentage" command line parameter that has a percentage chance of generating capture files per connection Change 2970874 on 2016/05/09 by Bart.Bressler - Turn on OODLE_DEV_SHIPPING in the Orion server shipping config so that captures can be generated in shipping builds - Link to version 215 of oodle Change 2971233 on 2016/05/09 by Bart.Bressler Update Oodle DLLs in Orion Change 2971362 on 2016/05/09 by Bart.Bressler Create script for building an oodle dictionary out of capture files in an arbitrary location Change 2972176 on 2016/05/10 by Bart.Bressler Update oodle references to version 215 in OodleHandlerComponent.Build.cs #tests used solo vs. ai to test oodle captures and using them Change 2974035 on 2016/05/11 by Simon.Tovey Adding fx.ParticleCollisionIgnoreInvisibleTime to replace hard coded time. This is the time a PSC needs to be invisible for to have all it's collisions ignored. This is potentially the cause of a bug Tim et al are seeing. #tests Editor, Can be used to repro/fix the issue. Change 2973985 on 2016/05/11 by Lina.Halper Retargeting fix with editor saving issue #tests: retargeting Change 2973695 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 26 @ CL 2973469 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2973694 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2973679 on 2016/05/11 by Graeme.Thornton UAT parameter -signedpak now no longer implies -pak #tests win64 cooked client. checked that pak generation works as expected through project launcher Change 2973588 on 2016/05/11 by Simon.Tovey OR-21033 - Get physical material from particle collision event exposed in Cascade / Blueprint Particles can now receive collision events selectively based upon the phyisics material of the hit. Physics material is passed through the event and can be accessed in BPs. The Event Receiver Spawn node also now has an array of Allowed and Banned phys materials. #tests Editor and game. Coudln't test cooked as having unrelated crashes in cooked games. Shouldn't be any cooked/uncooked issues here. Change 2973394 on 2016/05/11 by bruce.nesbit Fixed couple of shadow vars #tests compiled Change 2973335 on 2016/05/11 by Andrew.Grant Warning fix #tests compiled Change 2973308 on 2016/05/10 by Dmitry.Rekman Add "unplayable condition" reporting. - The server will report an unplayable condition by creating a local file (under Saved). - An external script can possibly notice this and, applying its own logic on % of servers reporting it, profile or shutdown the whole machine. - Report file is to be deleted by an external script. #tests Compiled and ran Linux server, subjected it to various hitches. Change 2973235 on 2016/05/10 by Zak.Middleton #ue4 - Removed allocs after initial spawn from client saved move processing in character movement. #tests PIE multiplayer w/ Bots Change 2973157 on 2016/05/10 by Olaf.Piesche Merging CL 2973112 from //UE4/Dev-Rendering->//Orion/Dev-General Providing particle source and target for beam emitters #tests editor game PC Change 2972715 on 2016/05/10 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 26 @ CL 2972681 #RB: none #Tests:none #ROBOMERGE-SOURCE: CL 2972712 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2972678 on 2016/05/10 by Mieszko.Zielinski Fixed babysitter bot not avoiding enemy towers when pathfinding back to base #Orion #jira OR-18590 #test golden path Change 2972595 on 2016/05/10 by Lina.Halper Animation Retargeting fix for blendspaces #code review: Benn.Gallagher, Martin.Wilson #tests: retargeting anim BP Change 2972282 on 2016/05/10 by Daniel.Lamb Optimized string asset reference resolution slightly to help get back missing 10 minutes from paragon cook. #test cook paragon. Change 2972260 on 2016/05/10 by Laurent.Delayen Fixed crash in UCharacterMovementComponent::HasRootMotionSources(). #tests Chains pull not crashing anymore. Change 2972241 on 2016/05/10 by Frank.Fella UMG - Fixes for material animation copied from 4.12. #RB Matt K. #TESTS Struct materials can now be animated and animated materials are named nicely. Change 2971643 on 2016/05/09 by Dmitry.Rekman Add reporting of "zero load" frame times (OR-21035). - Added a thread that does nothing but sleeps and counts how often it missed the target FPS. - Added an analytics event ServerZeroLoadFrameTimeDistribution that is sent at the end of the match. - Server only. #tests Compiled and ran Linux server on a compatible content, played few matches in a row. Change 2971544 on 2016/05/09 by Ben.Marsh EC: Use a full path to the telemetry file, to account for UAT switching directories. Change 2971532 on 2016/05/09 by Wes.Hunt Alter the cook stats hierarchical profile data to reflect the latest cook changes. #tests none Change 2971527 on 2016/05/09 by Ben.Marsh UAT: Move telemetry object into CommandUtils, so we can add stats from anywhere. #tests none Change 2971461 on 2016/05/09 by David.Ratti Fix issues with mesh swap skins: -Front end intro animations not playing -In game spawn animations not playing -Some attachment weirdness (twinblast) #tests golden path Change 2971460 on 2016/05/09 by David.Ratti Fallback to Target actor if there is no instigating actor in the GAmeplayCue parameters when determining if we should play "local only" effects #tests pie Change 2971364 on 2016/05/09 by Ben.Marsh EC: Add support for adding custom telemetry data from UAT scripts, which gets piped through to the trends panel in EC. #tests none Change 2971245 on 2016/05/09 by Dmitry.Rekman Add a "hitchhunter" log message to catch hitches while sleeping. #tests Compiled and ran Linux server on a compatible content. Change 2971196 on 2016/05/09 by jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2971139 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2971168 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) #ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human. //Orion/Dev-General/OrionGame/Content/Characters/Heroes/Coil/Audio/Body/Pixie_Cranking_Loop_Cue.uasset - can't branch exclusive file already opened #CodeReview: david.nikdel, jason.bestimt Change 2971113 on 2016/05/09 by Dmitry.Rekman UdpMessaging: Fixed broken filters for when to enable UDP transport. - Redoing MaxP's change from Dev-Sequencer (CL 2963357). - Reduces number of threads spawned by the server. #tests Compiled Linux server, ran it on a compatible content. Change 2971040 on 2016/05/09 by jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2970990 #RB:none #Tests:none [CodeReviewed]: jon.lietz #ROBOMERGE-SOURCE: CL 2971027 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) #ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human. #CodeReview: david.nikdel, jason.bestimt Change 2970555 on 2016/05/09 by Ben.Marsh BuildGraph: Only show warnings and errors for the SavePackage log during cooks. Prevents redundant display of information that's already in the Cook log. #tests preflight here: https://ec-01.epicgames.net/commander/link/jobDetails/jobs/6443796 Change 2970507 on 2016/05/09 by David.Ratti Support for linking passive abilities to a key binded ability. E.g., allow a passive ability to be unlocked and leveled up in step with a key binded ability. Cleaned up the TryLevel/CanLevelUp code a bit: moved to Orion Ability System Component #tests pie Change 2970414 on 2016/05/09 by Graeme.Thornton Don't take a copy of the child tags array when doing UGameplayTagsManager::FindTagNode, just take a const& #tests win64 client golden path Change 2969729 on 2016/05/06 by Mieszko.Zielinski Fixed a dumb mistake in a conditional expresion in UNavigationQueryFilter::GetQueryFilter #UE4 #test golden path Change 2969675 on 2016/05/06 by Mieszko.Zielinski Implemented "meta navigation filter" that can fetch a filter class based on given agent #UE4 Added NavFilter_AIControllerDefault that fetched DefaultNavigationFilter from AIController Reverted hack-feature that supplied same functionality to EQS #test golden path Change 2969652 on 2016/05/06 by Michael.Noland HLOD: Changed UI gating code so that whether or not a LOD Actor is valid is based on the presence of at least two static mesh components, rather than at least two actors (to improve handling when including BPs) - Repurposed HasValidSubActors for this check, and introduced HasAnySubActors() for the existing uses as this better matches the intent of how the function was used #tests Added a single BP containing 7 mesh components to a new ALODActor and verified that it allowed a proxy to be generated Change 2969651 on 2016/05/06 by Michael.Noland Simplygon: Added time taken for simplygon mesh reduction to the log message #tests Simplified a LOD cluster and inspected the log Change 2969604 on 2016/05/06 by Uriel.Doyon Changed default value to true for UParticleModuleVectorFieldLocal::bUseFixDT. #tests confirmed that default value has changed for old assets, while allowing override. Change 2969418 on 2016/05/06 by jason.bestimt #ROBOMERGE-AUTHOR: andrew.grant Fixed unconverted char string being passed as part of build info #tests ran & verified patch check passes #ROBOMERGE-SOURCE: CL 2969417 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2968817 on 2016/05/06 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2968572 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2968813 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2968383 on 2016/05/05 by Mieszko.Zielinski Added "default navigation filter" to AIController #UE4 Also, made EQS take advantage of that #test golden path Change 2968225 on 2016/05/05 by John.Pollard Add sanity checks and more info to help track down possible memory corruption #tests Networking, replication Change 2967903 on 2016/05/05 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2967827 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2967902 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2967899 on 2016/05/05 by Lina.Halper Merged change of 2956152 Remove invalid ensure - this didn't work if you have composite inside. #tests: none Change 2967870 on 2016/05/05 by Andrew.Grant Fix for OR-20731 (gamever crashes client) #tests gamever at console with -game Change 2967606 on 2016/05/05 by Wes.Hunt Tweaked output log message for HTTP module shutdown. #tests none Change 2967359 on 2016/05/05 by Wes.Hunt HttpManager will log outstanding requests on shutdown so people can debug shutdown issues and ensure their requests get flushed properly. Also changed default LogHttp logging level to display so these messages can be shown by default without using warning level. #tests ran editor build and queued up an event using the console command, then quit immediately. the log indeed showed that HttpManager had to wait at least 0.5 seconds for the request to complete. Change 2966987 on 2016/05/05 by Dmitry.Rekman Fix editor build. #tests Compiled Win64 editor. Change 2966977 on 2016/05/05 by Dmitry.Rekman Added collecting and reporting periodic server frame time distribution. - Added generic FHistogram class and necessary analytic events. - Also added reporting hostname (OR-20842). #tests Built Linux server and ran a few matches on a compatible content. Change 2966920 on 2016/05/04 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2966805 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2966919 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2966778 on 2016/05/04 by Michael.Noland Rendering: Fixed shadow variable warning in GPUProfiler #tests Compiled and tested GPUProfiler command Change 2966769 on 2016/05/04 by Mieszko.Zielinski Fixed GraphAStar not resetting the output path before fillinf it with results #UE4 #test golden path Change 2966704 on 2016/05/04 by Michael.Noland Rendering: Added triangle and draw call summaries to ProfileGPU output, broken up by asset and material - This is controlled by r.ProfileGPU.PrintAssetSummary, which defaults to 1, but you really need r.ShowMaterialDrawEvents 1 enabled as well for a complete picture - It can also output a summary line for speciifc asset names using a comma separated list in r.ProfileGPU.AssetSummaryCallOuts (e.g., "LOD,HeroName") #tests Used ProfileGPU a number of times Change 2966696 on 2016/05/04 by Michael.Noland Engine: Embedded FPS chart preamble/postamble/row .html files into ChartCreation.cpp to permanently solve packaging woes #tests Tested FPS charts in an uncooked and cooked build #jira OR-19713 Change 2966336 on 2016/05/04 by Lukasz.Furman fixed jungle minions unable to reach spawn locations when camp resets #jira OR-20700 #tests jungle camp POC Change 2965948 on 2016/05/04 by David.Ratti Changes to how passive abilities activate -Passives now continually try to activate by default rather than only on spawn Support for Status.Immortal -Prevents death, fies AbilityTriggerEvent.ImmortalProc when this happens. -Clamps health to 1. Fixed bug in muriel passive where ShieldHealthRegen would be left in the world where muriel died. Fixed bunch of crap in GA_OnSpawn that was causing desync on client at start of match #tests multi pie Change 2965870 on 2016/05/04 by Ryan.Gerleve Duplicated fix from Release-4.12 by marc.audy, CL 2960819: Owned components are once again referenced by their Owning actor for GC purposes #jira UE-29131 #tests golden path Change 2965798 on 2016/05/04 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2965789 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2965796 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2965220 on 2016/05/03 by Dmitry.Rekman Log instance id and system id (OR-20782). - These ids get reported in multiple analytics events, having them logged is helpful for quickly mapping events to the log file. #tests Compiled Linux server, ran on compatible client. Change 2964907 on 2016/05/03 by Jason.Bestimt #ORION_DG - Merge MAIN @ CL 2964858 #RB:none #Tests:none Change 2964530 on 2016/05/03 by Laurent.Delayen Renamed GetSlotRootMotionWeight to GetSlotNodeGlobalWeight and made it double buffered to it's safe to access anytime. Added GetSlotMontageGlobalWeight() to get the Global Weight of a montage being played on a Slot. (Also double buffered). Added GetInstanceMachineWeight() to get Global Weight of a State Machine in the AnimGraph. (Also double buffered) Added FAnimInstanceProxy::GetStateMachineIndexAndDescription to avoid searching through the AnimNodeProperties twice. #tests Chains full feature system in PIE. Change 2964498 on 2016/05/03 by Frank.Fella DecalComponent - Fix visibility so that it behaves like other scene components with regard to the editor visibility, component visibility, and actor hidden in game flags. #RB Andrew Rodham #TESTS Visibility for decals works like other scene components in the editor, and their visibility can now be animated properly by sequencer. Change 2964428 on 2016/05/03 by Benn.Gallagher Fixed stale clothing chunk/section references after container realloc in editor #tests editor Change 2964316 on 2016/05/03 by bruce.nesbit Banner revisions Banners now use components for various banner items Banners can now be enabled when killing a hero. #tests PIE+Game Change 2964187 on 2016/05/03 by Jon.Lietz Speeding up the tag count check in UAbilitySystemComponent::RegisterAndCallGameplayTagEvent() - Remove the call to GetAggregatedStackCount and creating a FGameplayEffectQuery every time we call RegisterAndCallGameplayTagEvent - Added GetTagCount to the UAbilitySystemComponent that will call GetTagCount on the GameplayTagCountContainer #RB DanY #tests JIP shadow pad still works. Change 2964136 on 2016/05/03 by Laurent.Delayen Fix crash while switching tabs using Persona. #tests not crashing anymore. Change 2964083 on 2016/05/03 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2963929 [CodeReviewed]: andrew.grant HTTP Manager has larger stack size (1024) #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2964080 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2963771 on 2016/05/02 by Nick.Atamas Setting a desired size scale invalidates layout and volatility. #test none Change 2963555 on 2016/05/02 by Rob.Cannaday Fix PS4 Orion players being able to whisper chat with non-Orion players #jira OR-20626 #tests chat with launcher, fortnite Change 2963387 on 2016/05/02 by Laurent.Delayen Added GatherDebugData to FABRIK node. #tests showdebug animation works on Chains now. Change 2963331 on 2016/05/02 by Jon.Lietz fixing compile error, dont need the clamp just the ternary on the EventType and pass down the tag count or 1. #RB none #tests compiles Change 2963106 on 2016/05/02 by Rob.Cannaday Increase HTTP thread's stack size to 128k We discovered a stack overflow when the stack size was 64kb in LavasoftTcpService64.dll (Ad-Aware's Lavasoft Web Companion) #tests log in Change 2963047 on 2016/05/02 by Jon.Lietz OR-20206 for JIP we need to call the bound function if we already have the tag on reconnect. - adding a new function in UAbilitySystemComponent, RegisterAndCallGameplayTagEvent this will bind the passed in delegate and if the ability system has that tag already will execute the delegate. #RB Dave.Ratti #test shadow pad, slow, stun and root still trigger and trigger for JIP players. Change 2962836 on 2016/05/02 by jason.bestimt #ROBOMERGE-AUTHOR: andrew.grant [NULL MERGE] Duplicating 2961899 - Fix minimal code builds for Linux not overwriting files [CodeReviewed] Ben.Marsh #ROBOMERGE-SOURCE: CL 2962812 in //Orion/Release-0.24.2/... via CL 2962830 via CL 2962833 via CL 2962834 via CL 2962835 #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2962570 on 2016/05/02 by Jason.Bestimt #ORION_MAIN - Merge MAIN @ CL 2962544 #RB:none #Tests:none Change 2962552 on 2016/05/02 by Ben.Marsh Avoid output of warnings containing the string "error:" (and causing the EC post processor to fail the build) if posting build info has a human-readable error message instead. Output should probably be changed to parse out/sanitize the actual failure message if it's meant to retry and succeed, but this will stop failures caused by multiple builds being posted with the same build version. #tests none Change 2962506 on 2016/05/02 by Ben.Marsh Add a version string to identify a given build (FApp::GetBuildVersion()/BUILD_VERSION) which is distinct from the engine version. Defaults to <Escaped Branch Name>-CL-<Changelist>, but can be overriden by specifying a -Build=... argument to UpdateLocalVersion or the "Build" attribute to the SetVersion BuildGraph task. #tests Preflighted Win64 client/server build (P:\Builds\Orion\++Orion+Dev-General-CL-2962228-PF-2945494-6398155-PF-2945494-6398155) and loaded into Agora. Checked that version strings appear correctly in generated executables. Change 2962228 on 2016/04/30 by Dmitry.Rekman Move processing HTTP requests into separate thread (OR-20723). - First iteration of the implementation, pending implementing feedback. - Adds a separate thread for CurlHttp where actual processing is performed. - Coded by RobC, post-processed by me. #tests Compiled Linux server and Windows client, ran them on compatible content, played a match. Change 2961899 on 2016/04/29 by Ben.Marsh BuildGraph: Fix minimal Linux server builds not overwriting the existing executables, by adding an "Overwrite" parameter into the staging task. Windows exe-only patches already happen to bypass this bug by deleting the Binaries/Win64 directory (designed to remove any configurations that weren't built this time), but could still fail if changes had been made to some other staged binaries. #tests preflighted code-only build against DG CL 2960870 and compared output (P:\Builds\Orion\++Orion+Dev-General-CL-2961878-PF-2961895-6393603) Change 2961587 on 2016/04/29 by Daniel.Lamb Redirector doesn't fire callback if it fails to be loaded. #test Cook orion. Change 2961458 on 2016/04/29 by Wes.Hunt Cooker Stats improvements. Also removed some old UBT telemetry that was not being used. #tests many cooks of orion Change 2961136 on 2016/04/29 by Daniel.Lamb Readded caching of platform data into postload of materials. #test Cook paragon. [CL 2979220 by Ben Marsh in Main branch]
2016-05-16 16:20:52 -04:00
bool bDataWasBuilt = false;
COOK_STAT(auto Timer = NavCollisionCookStats::UsageStats.TimeSyncWork());
if (GetDerivedDataCacheRef().GetSynchronous(DerivedNavCollisionData, OutData, &bDataWasBuilt))
{
Copying //UE4/Orion-Staging to //UE4/Dev-Main (//UE4/Orion-Staging @ 2979119, //Orion/Dev-General @2976565) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 2976484 on 2016/05/12 by Jason.Bestimt #ROBOMERGE-AUTHOR: nick.atamas Added queueing to HUD Alerts so they don't clobber each other. Added input visualization so that keys show up in game. SRichTextBlock/UOrionRichTextBlock now have a MinDesiredWidth #test PIE #ROBOMERGE-SOURCE: CL 2976474 in //Orion/Release-0.26/... via CL 2976481 via CL 2976482 via CL 2976483 #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2976256 on 2016/05/12 by Zak.Middleton #ue4 - Fix for shipping build. #tests compiled Change 2976205 on 2016/05/12 by Zak.Middleton #ue4 - (Merge 2957866) Add MaxDepenetration for characters against geometry and pawns. #tests MP PIE PlayGo (Merging CL 2957866 using Framework->DevGeneral) Change 2976166 on 2016/05/12 by Daniel.Lamb Cooking optimziation to unsolicited markup saves 150 seconds paragon cook time. #test Cook paragon Change 2976161 on 2016/05/12 by Zak.Middleton #ue4 - Make sure LastUpdateLocation, Rotation, and Velocity are updated on client and server error corrections. ForcePositionUpdate should call PerformMovement regardless of velocity (there may be root motion or gravity effects). #tests PIE MP w/ real-world networking Change 2976092 on 2016/05/12 by Mieszko.Zielinski Modified adding dynamic subtrees to BT component so that we get a log info if it fails #UE4 #test golden path Change 2976001 on 2016/05/12 by Robert.Manuszewski Don't log to memory on dedicated servers #jira UE-30693 #test Cooked dedicated server and client Change 2975855 on 2016/05/12 by Lukasz.Furman fixed behavior tree serialization spawning duplicates of task services #tests BT editor Change 2975706 on 2016/05/12 by Daniel.Lamb Fixed redirect collector stats. #test Compile Change 2975636 on 2016/05/12 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge DUI @ CL 2975557 #RB:none #Tests:none [CodeReviewed]: matt.schembari, kerrington.smith, tony.oliva, jaymee.stanford, mona.huang, alex.conner, jacob.lawyer, paul.shank #ROBOMERGE-SOURCE: CL 2975635 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2975592 on 2016/05/12 by Zak.Middleton #ue4 - Add stat for SetHitResultFromShapeAndFaceIndex(). #tests PIE Change 2975589 on 2016/05/12 by Zak.Middleton #ue4 - Avoid filling temp variable unless in Editor builds. It's only used later in the function in Editor builds. #tests PIE Change 2975588 on 2016/05/12 by Zak.Middleton #ue4 - Minor tweak to avoid array read each loop iteration. #tests PIE Change 2975587 on 2016/05/12 by Zak.Middleton #ue4 - Add "IsPlayerController()" function to AController. Variable already existed, just wasn't exposed. #tests PIE Change 2975504 on 2016/05/12 by Daniel.Lamb Remove new stats system because it broke build. #test cook paragon Change 2975500 on 2016/05/12 by Daniel.Lamb Enable redirect timers so I can get stats from build machines. #test cook paragon. Change 2975367 on 2016/05/12 by Jason.Bestimt #ROBOMERGE-AUTHOR: david.nikdel #OGF #CatalogService #OSS #Localization - Flush the cached offers/items in CatalogServiceMcp when the culture changes since they contain localized text - Flush the cached virtual catalog offers/items in McpCatalogHelper when the culture changes since they contain localized text - Replaced SetForceCatalogRefresh with ClearCache per CR with SamZ (will require Launcher fixup) [CodeReviewed]: Sam.Zamani, Matt.Kuhlenschmidt #RB: Sam.Zamani #TESTS: storefront w/ language change #ROBOMERGE-SOURCE: CL 2975366 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2975209 on 2016/05/12 by Simon.Tovey Fixed initialization order warning. #tests none Change 2975200 on 2016/05/12 by Simon.Tovey Translucency GPU time stats for automation. Refactored separate translucency gpu timer to more general helper class and used it to also time regular translucency. Feeding both of these into a stat to help art identify poorly performing VFX for more detailed investigation. There are occasional spikes when the GPU is starved but overall the data out seems good. #tests GoldenPath, Editor, Auto downsampling works, new stat produces reasonable data. Change 2974984 on 2016/05/11 by Mieszko.Zielinski Fixed a bug in graph-a-star heuristics' calculation #UE4 #test golden path Change 2974916 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 26 @ CL 2974578 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2974915 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974869 on 2016/05/11 by Ben.Marsh BuildGraph: Add a MergeTelemetryWithPrefix="..." parameter to the <Command> task which allows merging the telemetry data from a child UAT run, adding a given prefix to all the key names. #tests none Change 2974673 on 2016/05/11 by Mieszko.Zielinski Fix to BT not stopping if "StopTree" called while BT was waiting for a task to latently abort #UE4 (change by ?ukasz.Furman) #test golden path Change 2974581 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: matt.kuhlenschmidt Merged CL 2974565 from Release-.26 -> Main: Fixed loc region not saving in shipping builds Partially fixed store not refreshing when changing regions. Real money currency items are pending additional fixes #ROBOMERGE-SOURCE: CL 2974578 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974444 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: richard.fawcett Reimplement support for specifying BuildPatchTool version used in chunking This is now possible after Ben Marsh's fix to BuildGraph with CL 2974407. #tests none #ROBOMERGE-SOURCE: CL 2974441 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974408 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: ben.marsh BuildGraph: Fix support for variable expansion in user-defined enum types. Enums in the schema are now represented as the union of valid values and a regex matching a balanced property expansion string, which still validates/autocompletes cleanly in Visual Studio. #tests none [CodeReviewed] Richard.Fawcett #ROBOMERGE-SOURCE: CL 2974407 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974392 on 2016/05/11 by Daniel.Lamb Optimizing resolve string asset reference resolution. Added timing stats (disabled by default). #test Cook paragon. Change 2974349 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: richard.fawcett Back out changelist 2974298. An issue with the BuildGraph system has prevented this change from working on the build farm. #tests none #ROBOMERGE-SOURCE: CL 2974347 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974299 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: richard.fawcett Add support for chunking builds with the pre-release version of BuildPatchTool. #tests None. This code will be tested by creating a build on the build farm immediately after submission. #ROBOMERGE-SOURCE: CL 2974298 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2974277 on 2016/05/11 by Lina.Halper Fix up of retargeting when it skips replacing nested reference #tests: retargeting anim BP Change 2974210 on 2016/05/11 by Bart.Bressler Merging Oodle changes from Dev-Networking Change 2939167 on 2016/04/10 by John.Barrett Updated packet bit termination code, so that both UNetConnection's and the PacketHandler use a termination bit (required for both PacketHandler/UNetconnection, as HandlerComponent's such as Oodle, are byte-aligned and do not preserve packet bit size). Added new 'stat packet' stats group, for tracking reserved packet bits. Added '-NoPacketHandler' commandline parameter, for disabling the PacketHandler and all HandlerComponent's (including stateless handshake) - restoring netcode to pre-PacketHandler state. Removed PacketHandler 'packet overhead' method of packet bit size calculation - replaced with termination bit. Still partially used for reserving bits within packets (but renamed to avoid conflict with other 'PacketOverhead' variable). Refactored/consolidated some PacketHandler code. Added more stringent bounds checking on packet sizes. Change 2939168 on 2016/04/10 by John.Barrett Updated Oodle to support new packet bit-termination code. Added Oodle protocol support for selective packet compression (packets can now be sent uncompressed - game code will require a hook for this) - required for new bit-based netcode (Oodle outputs byte-aligned data, allowing compressed data to exceed size of uncompressed data - and thus, maximum packet size if not sent uncompressed - in rare edge cases). Added '-CompressionTest' commandline parameter to Oodle dictionary generation commandlet, which reserves a portion of captured packets, for determining the compression savings percentage. Added '-OodleDebugDump' commandline parameter, which disables normal dictionary generation, and converts packet captures into a .bin file, which is compatible with the Oodle 'example_packet.cpp' code. Added temporary security bandaids to Oodle code, based on report that Luigi Auriemma put together, which deals with potential weaknesses in the Oodle API Added 'stat oodle' stats for tracking failed attempts at compressing packets. Change 2942964 on 2016/04/10 by Ryan.Gerleve Fix broken indentation/formatting Change 2958260 on 2016/04/27 by Bart.bRessler Add branch name and changelist to oodle packet capture filenames. Change 2964360 on 2016/05/03 by John.Barrett Updated Oodle to support using a dictionary and capturing packets at the same time. The dictionary is now always loaded, if specified, and whenever -OodleCapturing is on the commandline, packets are captured alongside the active dictionary. Added several debug commands, to aid with testing compression performance (not QA-ready; only works with 1 player on a server): "Oodle Compression On/Off" - enables/disables packet compression (but still decompresses received compressed packets) "Oodle Dictionary Unload/Load" - unloads/loads the dictionary files, to allow releasing the files for dictionary generation, and reloading the new dictionary. "Oodle Capture On/Off" - Enables/Disables packet capturing at runtime - requires '-OodleCapturing' on commandline. "Oodle ResetStats" - resets the 'stat oodle' stat counters. The NetcodeUnitTest plugin should be enabled, so that these commands can automatically execute on the server as well, as needed. Change 2964553 on 2016/05/03 by Bart.Bressler Add process ID to oodle capture filenames Change 2966247 on 2016/05/04 by John.Pollard Oodle 2.1.5 SDK Change 2968761 on 2016/05/06 by Bart.Bressler - Added changelist number as parameter to most command line tasks to filter captures by their changelist number (use "all" to get everything) - Moved a bunch of the file searching/processing code outside of the tasks themselves so that the tasks all just operate to an array of capture files, this makes it easier to create new command line options - When looking for capture files, we will now recursively search subdirectories Change 2970529 on 2016/05/09 by Bart.Bressler Add an optional "CapturePercentage" command line parameter that has a percentage chance of generating capture files per connection Change 2970874 on 2016/05/09 by Bart.Bressler - Turn on OODLE_DEV_SHIPPING in the Orion server shipping config so that captures can be generated in shipping builds - Link to version 215 of oodle Change 2971233 on 2016/05/09 by Bart.Bressler Update Oodle DLLs in Orion Change 2971362 on 2016/05/09 by Bart.Bressler Create script for building an oodle dictionary out of capture files in an arbitrary location Change 2972176 on 2016/05/10 by Bart.Bressler Update oodle references to version 215 in OodleHandlerComponent.Build.cs #tests used solo vs. ai to test oodle captures and using them Change 2974035 on 2016/05/11 by Simon.Tovey Adding fx.ParticleCollisionIgnoreInvisibleTime to replace hard coded time. This is the time a PSC needs to be invisible for to have all it's collisions ignored. This is potentially the cause of a bug Tim et al are seeing. #tests Editor, Can be used to repro/fix the issue. Change 2973985 on 2016/05/11 by Lina.Halper Retargeting fix with editor saving issue #tests: retargeting Change 2973695 on 2016/05/11 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 26 @ CL 2973469 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2973694 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2973679 on 2016/05/11 by Graeme.Thornton UAT parameter -signedpak now no longer implies -pak #tests win64 cooked client. checked that pak generation works as expected through project launcher Change 2973588 on 2016/05/11 by Simon.Tovey OR-21033 - Get physical material from particle collision event exposed in Cascade / Blueprint Particles can now receive collision events selectively based upon the phyisics material of the hit. Physics material is passed through the event and can be accessed in BPs. The Event Receiver Spawn node also now has an array of Allowed and Banned phys materials. #tests Editor and game. Coudln't test cooked as having unrelated crashes in cooked games. Shouldn't be any cooked/uncooked issues here. Change 2973394 on 2016/05/11 by bruce.nesbit Fixed couple of shadow vars #tests compiled Change 2973335 on 2016/05/11 by Andrew.Grant Warning fix #tests compiled Change 2973308 on 2016/05/10 by Dmitry.Rekman Add "unplayable condition" reporting. - The server will report an unplayable condition by creating a local file (under Saved). - An external script can possibly notice this and, applying its own logic on % of servers reporting it, profile or shutdown the whole machine. - Report file is to be deleted by an external script. #tests Compiled and ran Linux server, subjected it to various hitches. Change 2973235 on 2016/05/10 by Zak.Middleton #ue4 - Removed allocs after initial spawn from client saved move processing in character movement. #tests PIE multiplayer w/ Bots Change 2973157 on 2016/05/10 by Olaf.Piesche Merging CL 2973112 from //UE4/Dev-Rendering->//Orion/Dev-General Providing particle source and target for beam emitters #tests editor game PC Change 2972715 on 2016/05/10 by Jason.Bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 26 @ CL 2972681 #RB: none #Tests:none #ROBOMERGE-SOURCE: CL 2972712 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2972678 on 2016/05/10 by Mieszko.Zielinski Fixed babysitter bot not avoiding enemy towers when pathfinding back to base #Orion #jira OR-18590 #test golden path Change 2972595 on 2016/05/10 by Lina.Halper Animation Retargeting fix for blendspaces #code review: Benn.Gallagher, Martin.Wilson #tests: retargeting anim BP Change 2972282 on 2016/05/10 by Daniel.Lamb Optimized string asset reference resolution slightly to help get back missing 10 minutes from paragon cook. #test cook paragon. Change 2972260 on 2016/05/10 by Laurent.Delayen Fixed crash in UCharacterMovementComponent::HasRootMotionSources(). #tests Chains pull not crashing anymore. Change 2972241 on 2016/05/10 by Frank.Fella UMG - Fixes for material animation copied from 4.12. #RB Matt K. #TESTS Struct materials can now be animated and animated materials are named nicely. Change 2971643 on 2016/05/09 by Dmitry.Rekman Add reporting of "zero load" frame times (OR-21035). - Added a thread that does nothing but sleeps and counts how often it missed the target FPS. - Added an analytics event ServerZeroLoadFrameTimeDistribution that is sent at the end of the match. - Server only. #tests Compiled and ran Linux server on a compatible content, played few matches in a row. Change 2971544 on 2016/05/09 by Ben.Marsh EC: Use a full path to the telemetry file, to account for UAT switching directories. Change 2971532 on 2016/05/09 by Wes.Hunt Alter the cook stats hierarchical profile data to reflect the latest cook changes. #tests none Change 2971527 on 2016/05/09 by Ben.Marsh UAT: Move telemetry object into CommandUtils, so we can add stats from anywhere. #tests none Change 2971461 on 2016/05/09 by David.Ratti Fix issues with mesh swap skins: -Front end intro animations not playing -In game spawn animations not playing -Some attachment weirdness (twinblast) #tests golden path Change 2971460 on 2016/05/09 by David.Ratti Fallback to Target actor if there is no instigating actor in the GAmeplayCue parameters when determining if we should play "local only" effects #tests pie Change 2971364 on 2016/05/09 by Ben.Marsh EC: Add support for adding custom telemetry data from UAT scripts, which gets piped through to the trends panel in EC. #tests none Change 2971245 on 2016/05/09 by Dmitry.Rekman Add a "hitchhunter" log message to catch hitches while sleeping. #tests Compiled and ran Linux server on a compatible content. Change 2971196 on 2016/05/09 by jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2971139 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2971168 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) #ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human. //Orion/Dev-General/OrionGame/Content/Characters/Heroes/Coil/Audio/Body/Pixie_Cranking_Loop_Cue.uasset - can't branch exclusive file already opened #CodeReview: david.nikdel, jason.bestimt Change 2971113 on 2016/05/09 by Dmitry.Rekman UdpMessaging: Fixed broken filters for when to enable UDP transport. - Redoing MaxP's change from Dev-Sequencer (CL 2963357). - Reduces number of threads spawned by the server. #tests Compiled Linux server, ran it on a compatible content. Change 2971040 on 2016/05/09 by jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2970990 #RB:none #Tests:none [CodeReviewed]: jon.lietz #ROBOMERGE-SOURCE: CL 2971027 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) #ROBOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human. #CodeReview: david.nikdel, jason.bestimt Change 2970555 on 2016/05/09 by Ben.Marsh BuildGraph: Only show warnings and errors for the SavePackage log during cooks. Prevents redundant display of information that's already in the Cook log. #tests preflight here: https://ec-01.epicgames.net/commander/link/jobDetails/jobs/6443796 Change 2970507 on 2016/05/09 by David.Ratti Support for linking passive abilities to a key binded ability. E.g., allow a passive ability to be unlocked and leveled up in step with a key binded ability. Cleaned up the TryLevel/CanLevelUp code a bit: moved to Orion Ability System Component #tests pie Change 2970414 on 2016/05/09 by Graeme.Thornton Don't take a copy of the child tags array when doing UGameplayTagsManager::FindTagNode, just take a const& #tests win64 client golden path Change 2969729 on 2016/05/06 by Mieszko.Zielinski Fixed a dumb mistake in a conditional expresion in UNavigationQueryFilter::GetQueryFilter #UE4 #test golden path Change 2969675 on 2016/05/06 by Mieszko.Zielinski Implemented "meta navigation filter" that can fetch a filter class based on given agent #UE4 Added NavFilter_AIControllerDefault that fetched DefaultNavigationFilter from AIController Reverted hack-feature that supplied same functionality to EQS #test golden path Change 2969652 on 2016/05/06 by Michael.Noland HLOD: Changed UI gating code so that whether or not a LOD Actor is valid is based on the presence of at least two static mesh components, rather than at least two actors (to improve handling when including BPs) - Repurposed HasValidSubActors for this check, and introduced HasAnySubActors() for the existing uses as this better matches the intent of how the function was used #tests Added a single BP containing 7 mesh components to a new ALODActor and verified that it allowed a proxy to be generated Change 2969651 on 2016/05/06 by Michael.Noland Simplygon: Added time taken for simplygon mesh reduction to the log message #tests Simplified a LOD cluster and inspected the log Change 2969604 on 2016/05/06 by Uriel.Doyon Changed default value to true for UParticleModuleVectorFieldLocal::bUseFixDT. #tests confirmed that default value has changed for old assets, while allowing override. Change 2969418 on 2016/05/06 by jason.bestimt #ROBOMERGE-AUTHOR: andrew.grant Fixed unconverted char string being passed as part of build info #tests ran & verified patch check passes #ROBOMERGE-SOURCE: CL 2969417 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2968817 on 2016/05/06 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2968572 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2968813 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2968383 on 2016/05/05 by Mieszko.Zielinski Added "default navigation filter" to AIController #UE4 Also, made EQS take advantage of that #test golden path Change 2968225 on 2016/05/05 by John.Pollard Add sanity checks and more info to help track down possible memory corruption #tests Networking, replication Change 2967903 on 2016/05/05 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2967827 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2967902 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2967899 on 2016/05/05 by Lina.Halper Merged change of 2956152 Remove invalid ensure - this didn't work if you have composite inside. #tests: none Change 2967870 on 2016/05/05 by Andrew.Grant Fix for OR-20731 (gamever crashes client) #tests gamever at console with -game Change 2967606 on 2016/05/05 by Wes.Hunt Tweaked output log message for HTTP module shutdown. #tests none Change 2967359 on 2016/05/05 by Wes.Hunt HttpManager will log outstanding requests on shutdown so people can debug shutdown issues and ensure their requests get flushed properly. Also changed default LogHttp logging level to display so these messages can be shown by default without using warning level. #tests ran editor build and queued up an event using the console command, then quit immediately. the log indeed showed that HttpManager had to wait at least 0.5 seconds for the request to complete. Change 2966987 on 2016/05/05 by Dmitry.Rekman Fix editor build. #tests Compiled Win64 editor. Change 2966977 on 2016/05/05 by Dmitry.Rekman Added collecting and reporting periodic server frame time distribution. - Added generic FHistogram class and necessary analytic events. - Also added reporting hostname (OR-20842). #tests Built Linux server and ran a few matches on a compatible content. Change 2966920 on 2016/05/04 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2966805 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2966919 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2966778 on 2016/05/04 by Michael.Noland Rendering: Fixed shadow variable warning in GPUProfiler #tests Compiled and tested GPUProfiler command Change 2966769 on 2016/05/04 by Mieszko.Zielinski Fixed GraphAStar not resetting the output path before fillinf it with results #UE4 #test golden path Change 2966704 on 2016/05/04 by Michael.Noland Rendering: Added triangle and draw call summaries to ProfileGPU output, broken up by asset and material - This is controlled by r.ProfileGPU.PrintAssetSummary, which defaults to 1, but you really need r.ShowMaterialDrawEvents 1 enabled as well for a complete picture - It can also output a summary line for speciifc asset names using a comma separated list in r.ProfileGPU.AssetSummaryCallOuts (e.g., "LOD,HeroName") #tests Used ProfileGPU a number of times Change 2966696 on 2016/05/04 by Michael.Noland Engine: Embedded FPS chart preamble/postamble/row .html files into ChartCreation.cpp to permanently solve packaging woes #tests Tested FPS charts in an uncooked and cooked build #jira OR-19713 Change 2966336 on 2016/05/04 by Lukasz.Furman fixed jungle minions unable to reach spawn locations when camp resets #jira OR-20700 #tests jungle camp POC Change 2965948 on 2016/05/04 by David.Ratti Changes to how passive abilities activate -Passives now continually try to activate by default rather than only on spawn Support for Status.Immortal -Prevents death, fies AbilityTriggerEvent.ImmortalProc when this happens. -Clamps health to 1. Fixed bug in muriel passive where ShieldHealthRegen would be left in the world where muriel died. Fixed bunch of crap in GA_OnSpawn that was causing desync on client at start of match #tests multi pie Change 2965870 on 2016/05/04 by Ryan.Gerleve Duplicated fix from Release-4.12 by marc.audy, CL 2960819: Owned components are once again referenced by their Owning actor for GC purposes #jira UE-29131 #tests golden path Change 2965798 on 2016/05/04 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2965789 #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2965796 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2965220 on 2016/05/03 by Dmitry.Rekman Log instance id and system id (OR-20782). - These ids get reported in multiple analytics events, having them logged is helpful for quickly mapping events to the log file. #tests Compiled Linux server, ran on compatible client. Change 2964907 on 2016/05/03 by Jason.Bestimt #ORION_DG - Merge MAIN @ CL 2964858 #RB:none #Tests:none Change 2964530 on 2016/05/03 by Laurent.Delayen Renamed GetSlotRootMotionWeight to GetSlotNodeGlobalWeight and made it double buffered to it's safe to access anytime. Added GetSlotMontageGlobalWeight() to get the Global Weight of a montage being played on a Slot. (Also double buffered). Added GetInstanceMachineWeight() to get Global Weight of a State Machine in the AnimGraph. (Also double buffered) Added FAnimInstanceProxy::GetStateMachineIndexAndDescription to avoid searching through the AnimNodeProperties twice. #tests Chains full feature system in PIE. Change 2964498 on 2016/05/03 by Frank.Fella DecalComponent - Fix visibility so that it behaves like other scene components with regard to the editor visibility, component visibility, and actor hidden in game flags. #RB Andrew Rodham #TESTS Visibility for decals works like other scene components in the editor, and their visibility can now be animated properly by sequencer. Change 2964428 on 2016/05/03 by Benn.Gallagher Fixed stale clothing chunk/section references after container realloc in editor #tests editor Change 2964316 on 2016/05/03 by bruce.nesbit Banner revisions Banners now use components for various banner items Banners can now be enabled when killing a hero. #tests PIE+Game Change 2964187 on 2016/05/03 by Jon.Lietz Speeding up the tag count check in UAbilitySystemComponent::RegisterAndCallGameplayTagEvent() - Remove the call to GetAggregatedStackCount and creating a FGameplayEffectQuery every time we call RegisterAndCallGameplayTagEvent - Added GetTagCount to the UAbilitySystemComponent that will call GetTagCount on the GameplayTagCountContainer #RB DanY #tests JIP shadow pad still works. Change 2964136 on 2016/05/03 by Laurent.Delayen Fix crash while switching tabs using Persona. #tests not crashing anymore. Change 2964083 on 2016/05/03 by jason.bestimt #ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 25.2 @ CL 2963929 [CodeReviewed]: andrew.grant HTTP Manager has larger stack size (1024) #RB:none #Tests:none #ROBOMERGE-SOURCE: CL 2964080 in //Orion/Main/... #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2963771 on 2016/05/02 by Nick.Atamas Setting a desired size scale invalidates layout and volatility. #test none Change 2963555 on 2016/05/02 by Rob.Cannaday Fix PS4 Orion players being able to whisper chat with non-Orion players #jira OR-20626 #tests chat with launcher, fortnite Change 2963387 on 2016/05/02 by Laurent.Delayen Added GatherDebugData to FABRIK node. #tests showdebug animation works on Chains now. Change 2963331 on 2016/05/02 by Jon.Lietz fixing compile error, dont need the clamp just the ternary on the EventType and pass down the tag count or 1. #RB none #tests compiles Change 2963106 on 2016/05/02 by Rob.Cannaday Increase HTTP thread's stack size to 128k We discovered a stack overflow when the stack size was 64kb in LavasoftTcpService64.dll (Ad-Aware's Lavasoft Web Companion) #tests log in Change 2963047 on 2016/05/02 by Jon.Lietz OR-20206 for JIP we need to call the bound function if we already have the tag on reconnect. - adding a new function in UAbilitySystemComponent, RegisterAndCallGameplayTagEvent this will bind the passed in delegate and if the ability system has that tag already will execute the delegate. #RB Dave.Ratti #test shadow pad, slow, stun and root still trigger and trigger for JIP players. Change 2962836 on 2016/05/02 by jason.bestimt #ROBOMERGE-AUTHOR: andrew.grant [NULL MERGE] Duplicating 2961899 - Fix minimal code builds for Linux not overwriting files [CodeReviewed] Ben.Marsh #ROBOMERGE-SOURCE: CL 2962812 in //Orion/Release-0.24.2/... via CL 2962830 via CL 2962833 via CL 2962834 via CL 2962835 #ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 2962570 on 2016/05/02 by Jason.Bestimt #ORION_MAIN - Merge MAIN @ CL 2962544 #RB:none #Tests:none Change 2962552 on 2016/05/02 by Ben.Marsh Avoid output of warnings containing the string "error:" (and causing the EC post processor to fail the build) if posting build info has a human-readable error message instead. Output should probably be changed to parse out/sanitize the actual failure message if it's meant to retry and succeed, but this will stop failures caused by multiple builds being posted with the same build version. #tests none Change 2962506 on 2016/05/02 by Ben.Marsh Add a version string to identify a given build (FApp::GetBuildVersion()/BUILD_VERSION) which is distinct from the engine version. Defaults to <Escaped Branch Name>-CL-<Changelist>, but can be overriden by specifying a -Build=... argument to UpdateLocalVersion or the "Build" attribute to the SetVersion BuildGraph task. #tests Preflighted Win64 client/server build (P:\Builds\Orion\++Orion+Dev-General-CL-2962228-PF-2945494-6398155-PF-2945494-6398155) and loaded into Agora. Checked that version strings appear correctly in generated executables. Change 2962228 on 2016/04/30 by Dmitry.Rekman Move processing HTTP requests into separate thread (OR-20723). - First iteration of the implementation, pending implementing feedback. - Adds a separate thread for CurlHttp where actual processing is performed. - Coded by RobC, post-processed by me. #tests Compiled Linux server and Windows client, ran them on compatible content, played a match. Change 2961899 on 2016/04/29 by Ben.Marsh BuildGraph: Fix minimal Linux server builds not overwriting the existing executables, by adding an "Overwrite" parameter into the staging task. Windows exe-only patches already happen to bypass this bug by deleting the Binaries/Win64 directory (designed to remove any configurations that weren't built this time), but could still fail if changes had been made to some other staged binaries. #tests preflighted code-only build against DG CL 2960870 and compared output (P:\Builds\Orion\++Orion+Dev-General-CL-2961878-PF-2961895-6393603) Change 2961587 on 2016/04/29 by Daniel.Lamb Redirector doesn't fire callback if it fails to be loaded. #test Cook orion. Change 2961458 on 2016/04/29 by Wes.Hunt Cooker Stats improvements. Also removed some old UBT telemetry that was not being used. #tests many cooks of orion Change 2961136 on 2016/04/29 by Daniel.Lamb Readded caching of platform data into postload of materials. #test Cook paragon. [CL 2979220 by Ben Marsh in Main branch]
2016-05-16 16:20:52 -04:00
COOK_STAT(Timer.AddHitOrMiss(bDataWasBuilt ? FCookStats::CallStats::EHitOrMiss::Miss : FCookStats::CallStats::EHitOrMiss::Hit, OutData.Num()));
if (OutData.Num())
{
Result->Lock(LOCK_READ_WRITE);
FMemory::Memcpy(Result->Realloc(OutData.Num()), OutData.GetData(), OutData.Num());
Result->Unlock();
}
}
}
}
UE_CLOG(!Result, LogNavigation, Error, TEXT("Failed to read CoockedDataFormat for %s."), *GetPathName());
return (Result && Result->GetBulkDataSize() > 0) ? Result : nullptr; // we don't return empty bulk data...but we save it to avoid thrashing the DDC
}
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3152045) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3106449 on 2016/08/30 by Michael.Dupuis #jira UETOOL-229 Added generic command icons used in Edit Menu (including contextual menu) Change 3133997 on 2016/09/21 by Alex.Delesky #jira UE-34079 - FSceneView parameter for FBatchedElements::Draw is no longer an optional parameter. Change 3134132 on 2016/09/21 by Jamie.Dale Added the "unattended" flag when running the localzation commandlets via UAT Change 3134147 on 2016/09/21 by Frank.Fella Core - Add multitouch support to windows. Change 3134349 on 2016/09/21 by Michael.Dupuis #jira UE-36151 Update the title bar to display the branch also Change 3134355 on 2016/09/21 by Michael.Dupuis #jira UE-36041 When initially creating a projet and trying to add everything to source control, also add the uproject file Change 3134447 on 2016/09/21 by Alexis.Matte #jira UE-36064 The SpriteComponent is now properly reused when duplicating a light. Change 3134451 on 2016/09/21 by Alexis.Matte #jira UE-22782 Make sure when we re-import we dont try to match the mesh name if the option bCombineToSingle is true Change 3134457 on 2016/09/21 by Jamie.Dale FInternationalization::Leetify now deals with escape sequences correctly. This also changes it to mark all leetified text with the start and end marker, and the unit tests have been updated accordingly. Change 3134685 on 2016/09/21 by Matt.Kuhlenschmidt Cleaned up some of the UI for the new material slot workflow (part 1) Change 3134743 on 2016/09/21 by Matt.Kuhlenschmidt Fix crash clicking OK to the import mesh dialog in persona when a path is not selected. The OK button is now disabled until a valid path is selected Change 3134760 on 2016/09/21 by Matt.Kuhlenschmidt Guard against cascade crash if cascade was shutdown but there is an old cascade particle system component in the undo buffer that attempts to refresh cascade Change 3134837 on 2016/09/21 by Matt.Kuhlenschmidt Fix static analysis warnings in this file Change 3134939 on 2016/09/21 by Nick.Darnell Automation - Moving the functional testing hooks for the editor into a plugin, the goal is to make it so you don't have to see all the extra stuff automation adds to the editor until the game project needs it. Refactoring the way automation messages are serialized, no longer relying on a comma delimited string to serialize automation data. Improving the filter for automation window so it lets you put in a path, and find it that way. Fixing RunTests from the commandline so that it properly finds the tests, instead of jumping out of the loop as soon as it finds any one match. Change 3134941 on 2016/09/21 by Nick.Darnell Automation - Functional tests now support warnings as errors on a per test basis. Continued itteration on screenshot comparison. Change 3135051 on 2016/09/21 by Matt.Kuhlenschmidt Fixed size of material slots in persona details panel Change 3135076 on 2016/09/21 by Nick.Darnell Automation - Adding a missing file. Change 3135584 on 2016/09/22 by Gareth.Martin Removed unused ULandscapeInfo::BeginDestroy Slight cleanup to FLandscapeEditDataInterface::DeleteLayer Change 3135585 on 2016/09/22 by Gareth.Martin New Count algo Const'd Copy/Accumulate/Transform Change 3135599 on 2016/09/22 by Gareth.Martin Resolve crash if a Landscape Layer Info object is force deleted while it is in use :( #jira UE-35709 Change 3135724 on 2016/09/22 by Michael.Dupuis #jira UE-32662 Remove old migration code that was causing this side effect Change 3135726 on 2016/09/22 by Nick.Darnell Slate - Removing the SLATE_PRE_MULTIPLY macro. Change 3135730 on 2016/09/22 by Nick.Darnell UMG - Exposing the 2D hit location that the WidgetInteractionComponent hit on the WidgetComponent. Change 3135738 on 2016/09/22 by Matt.Kuhlenschmidt Ensure any handles to the backbuffer are released before the backbuffer is resized https://jira.it.epicgames.net/browse/UE-30488 Change 3135810 on 2016/09/22 by Ben.Marsh Build: Compile tools before running automated tests. Change 3135993 on 2016/09/22 by Matt.Kuhlenschmidt Ensure you can unpause after toggling play/pause with a keyboard shortcut. We were processing the keybinding on key down AND up which caused the unpause to instantly pause again https://jira.it.epicgames.net/browse/UE-36276 Change 3136257 on 2016/09/22 by Matt.Kuhlenschmidt Fixed assign of materials to components not working if you multi-select multiple components of a blueprint and assign the material. The construction script was running before all the material had been set on all components. Change 3136318 on 2016/09/22 by Alex.Delesky #jira UE-7405 - Forcing the mouse cursor to show and then clicking inside the viewport will no longer cause the mouse to lose focus Change 3136494 on 2016/09/22 by Matt.Kuhlenschmidt Fix crash restarting a mission in Odin Change 3136741 on 2016/09/22 by Cody.Albert Fixed SButton and SWidget to not multiply color and opacity, since that's already being done by SCompoundWidget #jira UE-36322 Change 3137711 on 2016/09/23 by Matt.Kuhlenschmidt Added guard against slate rendering with deleted materials. In this will now be caught with a looged with the deleted material name. Change 3137713 on 2016/09/23 by Matt.Kuhlenschmidt Removed the pooled draw elements stuff which is not used Change 3137791 on 2016/09/23 by Nick.Darnell MediaPlayer - Removing .png from one of the style files, as that's not required. Was causing warnings to be logged on load. Change 3137793 on 2016/09/23 by Nick.Darnell Localization - Adjusting some log statements to say with instead of w/ Change 3137796 on 2016/09/23 by Nick.Darnell Slate - Adding missing and replacing corrupted style files in the editor. Change 3137864 on 2016/09/23 by Matt.Kuhlenschmidt Fixed "actors are referenced are you sure you want to delete" dialog appearing when you are copying a lot of actors to another level Change 3137876 on 2016/09/23 by Jamie.Dale Added allocation tagging to MProf2 This hooks into the existing FScopeCycleCounterUObject used by the stats system to track object tags (object, package, and class) when an allocation is made. Tags should be in the format "Category:Tag", and the "Tag" part may include "/" to create levels in the tag hierarchy (as shown in the MProf2 tool). #jira UETOOL-950 Change 3137982 on 2016/09/23 by Gareth.Martin Added Invoke() support to CopyIf Change 3137983 on 2016/09/23 by Gareth.Martin Added ULandscapeInfo::ForAllLandscapeProxies to clean up a lot of horrible code - Removed some dependencies on ALandscape and ALandscapeStreamingProxy in the process :) Also made FLandscapeEditorLayerSettings's constructor explicit to clean up some other horrible code Change 3138053 on 2016/09/23 by Matt.Kuhlenschmidt Fixed Child Actor Template properties not visible after changing Child Actor Class Change 3138079 on 2016/09/23 by Jamie.Dale Fixing some Clang warnings Change 3138087 on 2016/09/23 by Jamie.Dale Added GetResourceSizeEx and GetResourceSizeBytes, and deprecated GetResourceSize GetResourceSizeEx populates a struct which reports not only how much memory is allocated, but also which arenas the memory was allocated from. GetResourceSizeBytes just wraps a call to GetResourceSizeEx and returns the total size from all arenas (this has the same behavior as the now deprecated GetResourceSize). Classes that used to override GetResourceSize should instead override GetResourceSizeEx and report their allocations as appropriate. #jira UETOOL-952 Change 3138127 on 2016/09/23 by Gareth.Martin Fixed crash when merging levels containing landscape #jira UE-36267 Change 3138821 on 2016/09/23 by Stephan.Jiang Fixes "Select all input node" doesn't work properly on output node. #jira UE-36335 Change 3138915 on 2016/09/23 by Stephan.Jiang Disable "select all linked nodes" for output nodes in material editor Change 3139341 on 2016/09/25 by Nick.Darnell Automation - Moving the Blueprint Compiler Tests into the RuntimeTests plugin, and making the context client only since that's the only valid place to runt these tests. Change 3139342 on 2016/09/25 by Nick.Darnell Landscape - Fixing some compiler errors on mac. Change 3139345 on 2016/09/25 by Nick.Darnell Automation - Spelling and cleanup. Change 3139346 on 2016/09/25 by Nick.Darnell Engine - Changing a check to an ensure, there's no reason to crash if this happens. Change 3139347 on 2016/09/25 by Nick.Darnell Automation - Making EFunctionalTestResult a BlueprintType Change 3139348 on 2016/09/25 by Nick.Darnell Automation - Adding another test map. Change 3139676 on 2016/09/26 by Michael.Dupuis #jira UE-32335 If we are a config object simply permit the transaction for undo/redo Change 3139702 on 2016/09/26 by Nick.Darnell UMG - Making GetLocalHitLocation on UWidgetComponent virtual. Change 3139760 on 2016/09/26 by Alexis.Matte Make sure we remove override materials from the list when the mesh point by the component has less materials. #jira UE-28845 Change 3139761 on 2016/09/26 by Alex.Delesky Added additional validation code to FPropertyNode to now properly validate TMap value and key nodes. #jira none Change 3139843 on 2016/09/26 by Alex.Delesky #jira UE-36066 - Clearing all options from a ComboBox String when selecting an option will now also clear out the selected text correctly. Change 3139880 on 2016/09/26 by Frank.Fella QAGame - Update multitouch test with less crashy assets? Change 3139908 on 2016/09/26 by Matt.Kuhlenschmidt Fix selections having the potential to be out of sync after undo/redo Change 3139928 on 2016/09/26 by Nick.Darnell Automation - tweaking the test maps some more. Change 3140646 on 2016/09/26 by Matt.Kuhlenschmidt Fix false positive with the test for vaild materials being rendered by slate. Change 3140912 on 2016/09/26 by Frank.Fella Core - Fix multitouch ifdef which was preventing it from actually being enabled.Also update test level blueprint so that it's actually testable. Change 3141218 on 2016/09/27 by Matt.Kuhlenschmidt PR #2798: BP open anim interferes with mouse movement (Contributed by projectgheist) Change 3141223 on 2016/09/27 by Jamie.Dale Updated UTextProperty::Identical to no longer compare display strings all the time It was supposed to compare the identity at runtime as the display string can change at runtime. This was preventing FText properties from being used in TSet/TMap as the hash needs to be consistent. #jira UE-36456 Change 3141242 on 2016/09/27 by Richard.TalbotWatkin Fixed various issues where making changes to components in the Blueprint Editor could cause a crash if there is an active component in the component visualizer. #jira UE-36402 - Editor crash when adding a spline component after having deleted another spline component Duplicated CL 3139370 from //UE4/Release-4.13 Duplicated CL 3139878 from //UE4/Release-4.13 Change 3141323 on 2016/09/27 by Michael.Dupuis #jira UE-35081 Enable bDisplayEngineVersionInBadge by default Change 3141798 on 2016/09/27 by tim.gautier Added UMG_DisplayWidget Change 3143038 on 2016/09/28 by Jamie.Dale Added extra context to FTableRowBase::OnPostDataImport It now takes the owning data table and the row name as parameters. This allows is to do more useful fix-up that depends on the context of where it's used (such as stabilized text keys). Change 3143039 on 2016/09/28 by Jamie.Dale Optimized UTextProperty::Identical to use a pointer comparison rather than read out the identity Only texts which have the same display string pointer can have the same identity, so this is a much faster check. Change 3143098 on 2016/09/28 by Gareth.Martin Fixed crash when loading duplicated landscape levels #jira UE-34890 Change 3143300 on 2016/09/28 by Gareth.Martin Fixed crash when duplicating a level containing a landscape through the content browser #jira UE-34890 Change 3143389 on 2016/09/28 by Jamie.Dale LastResort is no longer staged in shipping builds You can now use the Content/SlateDebug folder to store any Slate resources that shouldn't be used in a shipping build (either for the Engine or for a game). This also removes the old bUsesSlateEditorStyle hack as everything should have migrated away from that now. Change 3143565 on 2016/09/28 by Matt.Kuhlenschmidt Fixed this file Change 3143717 on 2016/09/28 by Michael.Dupuis Fixed lowercase Change 3143798 on 2016/09/28 by Matt.Kuhlenschmidt Fixed StreamingPauseRendering code to not attempt to tick the scene viewport on the slate loading thread while where are blocked on level streaming. The viewport is rendered once and the render target is passed to slate instead of the entire viewport Change 3143820 on 2016/09/28 by Alexis.Matte Use the PersonaToolikit to get the mesh Change 3143833 on 2016/09/28 by Matt.Kuhlenschmidt Added guard for UE-36499 Change 3144144 on 2016/09/28 by Matt.Kuhlenschmidt Fix constructor init order Change 3144821 on 2016/09/29 by Jamie.Dale Fixed feedback loop in FSlateEditableTextLayout::ComputeDesiredSize If the wrapping width is less than the scrollbar width, the scrollbar could constantly re-appear and then disappear. Change 3144867 on 2016/09/29 by Matt.Kuhlenschmidt Added a commandlet to allow command line importing of any asset type the engine supports. - Intermediate checkin Change 3144875 on 2016/09/29 by Nick.Darnell Automation - Adding CornellBox example map, fixing some additional tests, removing the Movement Test. Change 3144975 on 2016/09/29 by Matt.Kuhlenschmidt Disable auto-applying of scalability settings The user will still be asked if the settings should be applied but if they do nothing the notification will just go away without setting stuff. Change 3145274 on 2016/09/29 by Jamie.Dale New asset menu no longer has a scrollbar on most displays Change 3146004 on 2016/09/29 by Matt.Barnes Adding two FBX test files to help facilitate QA coverage on the new material/section workflow. Change 3146377 on 2016/09/30 by Gareth.Martin Fixed landscape rendering errors after using the "change component size" tool - also affected initial import of a landscape+weightmaps #jira UE-34518 Change 3146455 on 2016/09/30 by Jamie.Dale Fixing more menus that had scrollbars due to only being able to use half the vertical resolution Change 3146466 on 2016/09/30 by Gareth.Martin Fixed not being able to erase foliage attached to BSP #jira UE-36297 Change 3146471 on 2016/09/30 by Jamie.Dale Can no longer localize sequences via the Content Browser Change 3146569 on 2016/09/30 by Jamie.Dale Fixed UGatherTextFromSourceCommandlet::ParseSourceText being able to underflow while parsing Change 3147116 on 2016/09/30 by Michael.Dupuis #jira UE-33068 Update selection once after the bulk operation so the AssetContextMenu will have a proper selection, but only perform this if we're not in UserSearchingMode (which mean AssetPicker) Change 3148091 on 2016/10/01 by Matt.Barnes Adding a map and relevant assets to facilitate testing around the new material blueprint nodes - GetMaterialSlotNames, GetMaterialIndex, and SetMaterialByName, respectively Change 3148714 on 2016/10/03 by Nick.Darnell PR #2770: [Git plugin] Fix bug where history and merging do not work if the user has format.pretty settings in their gitconfig (Contributed by SRombauts) #jira UE-35568 Change 3148793 on 2016/10/03 by Nick.Darnell Automation - TPS for SM_Cornellbox Change 3148801 on 2016/10/03 by Nick.Darnell PR #2820: [WidgetBlueprintLibrary] Throwing Essential-Functionality-Understanding PIE Errors when Player Controller ptr not supplied (Contributed by EverNewJoy) #jira UE-36711 Change 3148805 on 2016/10/03 by Nick.Darnell PR #2822: Add missing base includes and forward declarations for UProgressBar and UTextBlock (Contributed by error454) #jira UE-36715 Change 3148813 on 2016/10/03 by Nick.Darnell UMG - The retainer now contains the SVirtualWindow directly in the hierarchy. This should now make it possible to reliably focus elements inside the retainer widget. Change 3148855 on 2016/10/03 by Gareth.Martin Fixed performance regression when importing landscape heightmaps #jira UE-36659 Change 3149482 on 2016/10/03 by Cody.Albert Added link to Support landing page to Help menu #jira UE-36603 Change 3149520 on 2016/10/03 by tim.gautier Edited UMG_Behavior - Collapsed now has a toggleable state to demonstrate functionality. Change 3149945 on 2016/10/04 by Gareth.Martin Fixed invisible landscape components when using tessellation on landscape material #jira UE-35494 Change 3149951 on 2016/10/04 by Gareth.Martin Reduced material update log spam when creating and editing landscapes - Some will remain, landscape fundementally manipulates a lot of material instances #jira UE-34440 Change 3150143 on 2016/10/04 by Matt.Kuhlenschmidt Fix not crashing when trying to clear objects which have a specific class filter in the property settings https://jira.it.epicgames.net/browse/UE-36692 Change 3150614 on 2016/10/04 by Nick.Darnell Git - Disabling some logging in non-debug builds of the git source control plugin. Change 3151647 on 2016/10/05 by Matt.Kuhlenschmidt Fix loc warnings in these files (duplicate loc keys) Change 3151679 on 2016/10/05 by Nick.Darnell Editor - Fixing the build, removing the VREditor module from the dynamically loaded list. Change 3151722 on 2016/10/05 by Gareth.Martin Fix breakage to LandscapeEdModeSplineTools.cpp caused by Dev-VREditor from main integration Change 3151816 on 2016/10/05 by Gareth.Martin Fixed more breakage to Landscape caused by Dev-VREditor from main integration [CL 3152072 by Matt Kuhlenschmidt in Main branch]
2016-10-05 13:23:01 -04:00
void UNavCollision::GetResourceSizeEx(FResourceSizeEx& CumulativeResourceSize)
{
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3152045) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3106449 on 2016/08/30 by Michael.Dupuis #jira UETOOL-229 Added generic command icons used in Edit Menu (including contextual menu) Change 3133997 on 2016/09/21 by Alex.Delesky #jira UE-34079 - FSceneView parameter for FBatchedElements::Draw is no longer an optional parameter. Change 3134132 on 2016/09/21 by Jamie.Dale Added the "unattended" flag when running the localzation commandlets via UAT Change 3134147 on 2016/09/21 by Frank.Fella Core - Add multitouch support to windows. Change 3134349 on 2016/09/21 by Michael.Dupuis #jira UE-36151 Update the title bar to display the branch also Change 3134355 on 2016/09/21 by Michael.Dupuis #jira UE-36041 When initially creating a projet and trying to add everything to source control, also add the uproject file Change 3134447 on 2016/09/21 by Alexis.Matte #jira UE-36064 The SpriteComponent is now properly reused when duplicating a light. Change 3134451 on 2016/09/21 by Alexis.Matte #jira UE-22782 Make sure when we re-import we dont try to match the mesh name if the option bCombineToSingle is true Change 3134457 on 2016/09/21 by Jamie.Dale FInternationalization::Leetify now deals with escape sequences correctly. This also changes it to mark all leetified text with the start and end marker, and the unit tests have been updated accordingly. Change 3134685 on 2016/09/21 by Matt.Kuhlenschmidt Cleaned up some of the UI for the new material slot workflow (part 1) Change 3134743 on 2016/09/21 by Matt.Kuhlenschmidt Fix crash clicking OK to the import mesh dialog in persona when a path is not selected. The OK button is now disabled until a valid path is selected Change 3134760 on 2016/09/21 by Matt.Kuhlenschmidt Guard against cascade crash if cascade was shutdown but there is an old cascade particle system component in the undo buffer that attempts to refresh cascade Change 3134837 on 2016/09/21 by Matt.Kuhlenschmidt Fix static analysis warnings in this file Change 3134939 on 2016/09/21 by Nick.Darnell Automation - Moving the functional testing hooks for the editor into a plugin, the goal is to make it so you don't have to see all the extra stuff automation adds to the editor until the game project needs it. Refactoring the way automation messages are serialized, no longer relying on a comma delimited string to serialize automation data. Improving the filter for automation window so it lets you put in a path, and find it that way. Fixing RunTests from the commandline so that it properly finds the tests, instead of jumping out of the loop as soon as it finds any one match. Change 3134941 on 2016/09/21 by Nick.Darnell Automation - Functional tests now support warnings as errors on a per test basis. Continued itteration on screenshot comparison. Change 3135051 on 2016/09/21 by Matt.Kuhlenschmidt Fixed size of material slots in persona details panel Change 3135076 on 2016/09/21 by Nick.Darnell Automation - Adding a missing file. Change 3135584 on 2016/09/22 by Gareth.Martin Removed unused ULandscapeInfo::BeginDestroy Slight cleanup to FLandscapeEditDataInterface::DeleteLayer Change 3135585 on 2016/09/22 by Gareth.Martin New Count algo Const'd Copy/Accumulate/Transform Change 3135599 on 2016/09/22 by Gareth.Martin Resolve crash if a Landscape Layer Info object is force deleted while it is in use :( #jira UE-35709 Change 3135724 on 2016/09/22 by Michael.Dupuis #jira UE-32662 Remove old migration code that was causing this side effect Change 3135726 on 2016/09/22 by Nick.Darnell Slate - Removing the SLATE_PRE_MULTIPLY macro. Change 3135730 on 2016/09/22 by Nick.Darnell UMG - Exposing the 2D hit location that the WidgetInteractionComponent hit on the WidgetComponent. Change 3135738 on 2016/09/22 by Matt.Kuhlenschmidt Ensure any handles to the backbuffer are released before the backbuffer is resized https://jira.it.epicgames.net/browse/UE-30488 Change 3135810 on 2016/09/22 by Ben.Marsh Build: Compile tools before running automated tests. Change 3135993 on 2016/09/22 by Matt.Kuhlenschmidt Ensure you can unpause after toggling play/pause with a keyboard shortcut. We were processing the keybinding on key down AND up which caused the unpause to instantly pause again https://jira.it.epicgames.net/browse/UE-36276 Change 3136257 on 2016/09/22 by Matt.Kuhlenschmidt Fixed assign of materials to components not working if you multi-select multiple components of a blueprint and assign the material. The construction script was running before all the material had been set on all components. Change 3136318 on 2016/09/22 by Alex.Delesky #jira UE-7405 - Forcing the mouse cursor to show and then clicking inside the viewport will no longer cause the mouse to lose focus Change 3136494 on 2016/09/22 by Matt.Kuhlenschmidt Fix crash restarting a mission in Odin Change 3136741 on 2016/09/22 by Cody.Albert Fixed SButton and SWidget to not multiply color and opacity, since that's already being done by SCompoundWidget #jira UE-36322 Change 3137711 on 2016/09/23 by Matt.Kuhlenschmidt Added guard against slate rendering with deleted materials. In this will now be caught with a looged with the deleted material name. Change 3137713 on 2016/09/23 by Matt.Kuhlenschmidt Removed the pooled draw elements stuff which is not used Change 3137791 on 2016/09/23 by Nick.Darnell MediaPlayer - Removing .png from one of the style files, as that's not required. Was causing warnings to be logged on load. Change 3137793 on 2016/09/23 by Nick.Darnell Localization - Adjusting some log statements to say with instead of w/ Change 3137796 on 2016/09/23 by Nick.Darnell Slate - Adding missing and replacing corrupted style files in the editor. Change 3137864 on 2016/09/23 by Matt.Kuhlenschmidt Fixed "actors are referenced are you sure you want to delete" dialog appearing when you are copying a lot of actors to another level Change 3137876 on 2016/09/23 by Jamie.Dale Added allocation tagging to MProf2 This hooks into the existing FScopeCycleCounterUObject used by the stats system to track object tags (object, package, and class) when an allocation is made. Tags should be in the format "Category:Tag", and the "Tag" part may include "/" to create levels in the tag hierarchy (as shown in the MProf2 tool). #jira UETOOL-950 Change 3137982 on 2016/09/23 by Gareth.Martin Added Invoke() support to CopyIf Change 3137983 on 2016/09/23 by Gareth.Martin Added ULandscapeInfo::ForAllLandscapeProxies to clean up a lot of horrible code - Removed some dependencies on ALandscape and ALandscapeStreamingProxy in the process :) Also made FLandscapeEditorLayerSettings's constructor explicit to clean up some other horrible code Change 3138053 on 2016/09/23 by Matt.Kuhlenschmidt Fixed Child Actor Template properties not visible after changing Child Actor Class Change 3138079 on 2016/09/23 by Jamie.Dale Fixing some Clang warnings Change 3138087 on 2016/09/23 by Jamie.Dale Added GetResourceSizeEx and GetResourceSizeBytes, and deprecated GetResourceSize GetResourceSizeEx populates a struct which reports not only how much memory is allocated, but also which arenas the memory was allocated from. GetResourceSizeBytes just wraps a call to GetResourceSizeEx and returns the total size from all arenas (this has the same behavior as the now deprecated GetResourceSize). Classes that used to override GetResourceSize should instead override GetResourceSizeEx and report their allocations as appropriate. #jira UETOOL-952 Change 3138127 on 2016/09/23 by Gareth.Martin Fixed crash when merging levels containing landscape #jira UE-36267 Change 3138821 on 2016/09/23 by Stephan.Jiang Fixes "Select all input node" doesn't work properly on output node. #jira UE-36335 Change 3138915 on 2016/09/23 by Stephan.Jiang Disable "select all linked nodes" for output nodes in material editor Change 3139341 on 2016/09/25 by Nick.Darnell Automation - Moving the Blueprint Compiler Tests into the RuntimeTests plugin, and making the context client only since that's the only valid place to runt these tests. Change 3139342 on 2016/09/25 by Nick.Darnell Landscape - Fixing some compiler errors on mac. Change 3139345 on 2016/09/25 by Nick.Darnell Automation - Spelling and cleanup. Change 3139346 on 2016/09/25 by Nick.Darnell Engine - Changing a check to an ensure, there's no reason to crash if this happens. Change 3139347 on 2016/09/25 by Nick.Darnell Automation - Making EFunctionalTestResult a BlueprintType Change 3139348 on 2016/09/25 by Nick.Darnell Automation - Adding another test map. Change 3139676 on 2016/09/26 by Michael.Dupuis #jira UE-32335 If we are a config object simply permit the transaction for undo/redo Change 3139702 on 2016/09/26 by Nick.Darnell UMG - Making GetLocalHitLocation on UWidgetComponent virtual. Change 3139760 on 2016/09/26 by Alexis.Matte Make sure we remove override materials from the list when the mesh point by the component has less materials. #jira UE-28845 Change 3139761 on 2016/09/26 by Alex.Delesky Added additional validation code to FPropertyNode to now properly validate TMap value and key nodes. #jira none Change 3139843 on 2016/09/26 by Alex.Delesky #jira UE-36066 - Clearing all options from a ComboBox String when selecting an option will now also clear out the selected text correctly. Change 3139880 on 2016/09/26 by Frank.Fella QAGame - Update multitouch test with less crashy assets? Change 3139908 on 2016/09/26 by Matt.Kuhlenschmidt Fix selections having the potential to be out of sync after undo/redo Change 3139928 on 2016/09/26 by Nick.Darnell Automation - tweaking the test maps some more. Change 3140646 on 2016/09/26 by Matt.Kuhlenschmidt Fix false positive with the test for vaild materials being rendered by slate. Change 3140912 on 2016/09/26 by Frank.Fella Core - Fix multitouch ifdef which was preventing it from actually being enabled.Also update test level blueprint so that it's actually testable. Change 3141218 on 2016/09/27 by Matt.Kuhlenschmidt PR #2798: BP open anim interferes with mouse movement (Contributed by projectgheist) Change 3141223 on 2016/09/27 by Jamie.Dale Updated UTextProperty::Identical to no longer compare display strings all the time It was supposed to compare the identity at runtime as the display string can change at runtime. This was preventing FText properties from being used in TSet/TMap as the hash needs to be consistent. #jira UE-36456 Change 3141242 on 2016/09/27 by Richard.TalbotWatkin Fixed various issues where making changes to components in the Blueprint Editor could cause a crash if there is an active component in the component visualizer. #jira UE-36402 - Editor crash when adding a spline component after having deleted another spline component Duplicated CL 3139370 from //UE4/Release-4.13 Duplicated CL 3139878 from //UE4/Release-4.13 Change 3141323 on 2016/09/27 by Michael.Dupuis #jira UE-35081 Enable bDisplayEngineVersionInBadge by default Change 3141798 on 2016/09/27 by tim.gautier Added UMG_DisplayWidget Change 3143038 on 2016/09/28 by Jamie.Dale Added extra context to FTableRowBase::OnPostDataImport It now takes the owning data table and the row name as parameters. This allows is to do more useful fix-up that depends on the context of where it's used (such as stabilized text keys). Change 3143039 on 2016/09/28 by Jamie.Dale Optimized UTextProperty::Identical to use a pointer comparison rather than read out the identity Only texts which have the same display string pointer can have the same identity, so this is a much faster check. Change 3143098 on 2016/09/28 by Gareth.Martin Fixed crash when loading duplicated landscape levels #jira UE-34890 Change 3143300 on 2016/09/28 by Gareth.Martin Fixed crash when duplicating a level containing a landscape through the content browser #jira UE-34890 Change 3143389 on 2016/09/28 by Jamie.Dale LastResort is no longer staged in shipping builds You can now use the Content/SlateDebug folder to store any Slate resources that shouldn't be used in a shipping build (either for the Engine or for a game). This also removes the old bUsesSlateEditorStyle hack as everything should have migrated away from that now. Change 3143565 on 2016/09/28 by Matt.Kuhlenschmidt Fixed this file Change 3143717 on 2016/09/28 by Michael.Dupuis Fixed lowercase Change 3143798 on 2016/09/28 by Matt.Kuhlenschmidt Fixed StreamingPauseRendering code to not attempt to tick the scene viewport on the slate loading thread while where are blocked on level streaming. The viewport is rendered once and the render target is passed to slate instead of the entire viewport Change 3143820 on 2016/09/28 by Alexis.Matte Use the PersonaToolikit to get the mesh Change 3143833 on 2016/09/28 by Matt.Kuhlenschmidt Added guard for UE-36499 Change 3144144 on 2016/09/28 by Matt.Kuhlenschmidt Fix constructor init order Change 3144821 on 2016/09/29 by Jamie.Dale Fixed feedback loop in FSlateEditableTextLayout::ComputeDesiredSize If the wrapping width is less than the scrollbar width, the scrollbar could constantly re-appear and then disappear. Change 3144867 on 2016/09/29 by Matt.Kuhlenschmidt Added a commandlet to allow command line importing of any asset type the engine supports. - Intermediate checkin Change 3144875 on 2016/09/29 by Nick.Darnell Automation - Adding CornellBox example map, fixing some additional tests, removing the Movement Test. Change 3144975 on 2016/09/29 by Matt.Kuhlenschmidt Disable auto-applying of scalability settings The user will still be asked if the settings should be applied but if they do nothing the notification will just go away without setting stuff. Change 3145274 on 2016/09/29 by Jamie.Dale New asset menu no longer has a scrollbar on most displays Change 3146004 on 2016/09/29 by Matt.Barnes Adding two FBX test files to help facilitate QA coverage on the new material/section workflow. Change 3146377 on 2016/09/30 by Gareth.Martin Fixed landscape rendering errors after using the "change component size" tool - also affected initial import of a landscape+weightmaps #jira UE-34518 Change 3146455 on 2016/09/30 by Jamie.Dale Fixing more menus that had scrollbars due to only being able to use half the vertical resolution Change 3146466 on 2016/09/30 by Gareth.Martin Fixed not being able to erase foliage attached to BSP #jira UE-36297 Change 3146471 on 2016/09/30 by Jamie.Dale Can no longer localize sequences via the Content Browser Change 3146569 on 2016/09/30 by Jamie.Dale Fixed UGatherTextFromSourceCommandlet::ParseSourceText being able to underflow while parsing Change 3147116 on 2016/09/30 by Michael.Dupuis #jira UE-33068 Update selection once after the bulk operation so the AssetContextMenu will have a proper selection, but only perform this if we're not in UserSearchingMode (which mean AssetPicker) Change 3148091 on 2016/10/01 by Matt.Barnes Adding a map and relevant assets to facilitate testing around the new material blueprint nodes - GetMaterialSlotNames, GetMaterialIndex, and SetMaterialByName, respectively Change 3148714 on 2016/10/03 by Nick.Darnell PR #2770: [Git plugin] Fix bug where history and merging do not work if the user has format.pretty settings in their gitconfig (Contributed by SRombauts) #jira UE-35568 Change 3148793 on 2016/10/03 by Nick.Darnell Automation - TPS for SM_Cornellbox Change 3148801 on 2016/10/03 by Nick.Darnell PR #2820: [WidgetBlueprintLibrary] Throwing Essential-Functionality-Understanding PIE Errors when Player Controller ptr not supplied (Contributed by EverNewJoy) #jira UE-36711 Change 3148805 on 2016/10/03 by Nick.Darnell PR #2822: Add missing base includes and forward declarations for UProgressBar and UTextBlock (Contributed by error454) #jira UE-36715 Change 3148813 on 2016/10/03 by Nick.Darnell UMG - The retainer now contains the SVirtualWindow directly in the hierarchy. This should now make it possible to reliably focus elements inside the retainer widget. Change 3148855 on 2016/10/03 by Gareth.Martin Fixed performance regression when importing landscape heightmaps #jira UE-36659 Change 3149482 on 2016/10/03 by Cody.Albert Added link to Support landing page to Help menu #jira UE-36603 Change 3149520 on 2016/10/03 by tim.gautier Edited UMG_Behavior - Collapsed now has a toggleable state to demonstrate functionality. Change 3149945 on 2016/10/04 by Gareth.Martin Fixed invisible landscape components when using tessellation on landscape material #jira UE-35494 Change 3149951 on 2016/10/04 by Gareth.Martin Reduced material update log spam when creating and editing landscapes - Some will remain, landscape fundementally manipulates a lot of material instances #jira UE-34440 Change 3150143 on 2016/10/04 by Matt.Kuhlenschmidt Fix not crashing when trying to clear objects which have a specific class filter in the property settings https://jira.it.epicgames.net/browse/UE-36692 Change 3150614 on 2016/10/04 by Nick.Darnell Git - Disabling some logging in non-debug builds of the git source control plugin. Change 3151647 on 2016/10/05 by Matt.Kuhlenschmidt Fix loc warnings in these files (duplicate loc keys) Change 3151679 on 2016/10/05 by Nick.Darnell Editor - Fixing the build, removing the VREditor module from the dynamically loaded list. Change 3151722 on 2016/10/05 by Gareth.Martin Fix breakage to LandscapeEdModeSplineTools.cpp caused by Dev-VREditor from main integration Change 3151816 on 2016/10/05 by Gareth.Martin Fixed more breakage to Landscape caused by Dev-VREditor from main integration [CL 3152072 by Matt Kuhlenschmidt in Main branch]
2016-10-05 13:23:01 -04:00
Super::GetResourceSizeEx(CumulativeResourceSize);
if (CookedFormatData.Contains(NAVCOLLISION_FORMAT))
{
const FByteBulkData& FmtData = CookedFormatData.GetFormat(NAVCOLLISION_FORMAT);
CumulativeResourceSize.AddDedicatedSystemMemoryBytes(FmtData.GetBulkDataSize());
}
}
Copying //UE4/Release-Staging-4.15 to //UE4/Dev-Main (Source: //UE4/Release-4.15 @ 3267632) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3267632 on 2017/01/23 by Jurre.deBaare Marker syncs not working correctly in Blend Spaces #fix Ensure that SampleIndexWithMarkers is serialized #JIRA UE-40975 Change 3266915 on 2017/01/20 by Arciel.Rekman Fix Persona crash on Linux (UE-38790). - Static template variable got instantiated into multiple DSOs; probably exacerbated by --as-needed since this does not happen without it. #jira UE-38790 Change 3266785 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Make usage of CachedUsers thread safe. Duplicates CL 3245390 #jira UE-40649 Change 3266762 on 2017/01/20 by Rolando.Caloca UE4.15 - Fix for reallocating scene color #jira UE-40633 Change 3266642 on 2017/01/20 by Lina.Halper Downgraded Warning to Info #jira: UE-40643 Change 3266532 on 2017/01/20 by Jeff.Campeau Fix multiplatform Windows includes defeating the safety check in MinWindows.h #jira UE-40778 #rn Fixed a compile warning on Xbox One when XboxOneMinApi.h was included before MinWindows.h. Change 3266523 on 2017/01/20 by Marc.Audy Fix case where child actor could avoid getting begin play call #jira UE-40960 Change 3266474 on 2017/01/20 by Peter.Sauerbrei fix for using an API not yet available in iOS 8 #jira UE-40698 Change 3266339 on 2017/01/20 by Frank.Fella Sequencer - Fix UI issues with multi-track section rows. + Don't show an empty sub-track when there are no sections. + Expand parent tracks by default. #Jira UE-40487 Change 3266283 on 2017/01/20 by Jeff.Fisher UE-40683 GearVR projects rendering black -Fix from Remi Palandri #jira UE-40683 #review-3265824 @nick.whiting @ryan.vance Change 3266264 on 2017/01/20 by Lina.Halper Downgraded warning and changed log message #jira: UE-40643 Change 3266239 on 2017/01/20 by Peter.Sauerbrei fix for virtual joystick not showing up on some devices #jira UE-40472 Change 3266084 on 2017/01/20 by Mitchell.Wilson Resaving level to have correct starting camera position. Saved in wrong position after fixing a bug. #jira UE-40887 Change 3266077 on 2017/01/20 by Matt.Kuhlenschmidt Fixed "Wait for Movies to Complete" flag being reversed #jira UE-40943 Change 3266076 on 2017/01/20 by Mitchell.Wilson Updating occulsion bounds method on P_spark_burst_2 so it is not occluded when spawned inside of the coin mesh in BP_Overview example. Updating some post process examples due to changes made with Post Process settings. Film and Scene Color are temporary fixes and are intended to be fully updated in 4.16 #jira UE-40830 UE-40887 Change 3266034 on 2017/01/20 by Benn.Gallagher Fixed crash when reimporting APEX destructibles from apb/x files caused by not allowing the renderer to flush destroy resource commands before emptying an array. #jira UE-40911 Change 3266027 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Fix CreateSession and FindSession each permanently failing after first failure. Duplicates CL 3262175 #jira UE-39110 Change 3265906 on 2017/01/20 by Marcus.Wassmer Fix GPU particle AFR flickering and optimize injection transfers. Duplicate CL's 3260302, 3261252, 3265662, 3265678 #jira UE-40915 Change 3265873 on 2017/01/20 by Mark.Satterthwaite Duplicate CL #3262535: Make sure to set rasterizer state when rendering with a material in FSlateRHIRenderingPolicy::DrawElements #jira UE-40842 Change 3265857 on 2017/01/20 by Jamie.Dale Fixed font pathing issue that could happen in an out-of-source packaged build #jira UE-40855 Change 3265675 on 2017/01/20 by Matt.Kuhlenschmidt Move Dirt Mask Intensity to the correct post process category #jira UE-40851 Change 3265674 on 2017/01/20 by Rolando.Caloca UE4.15 - Revert #jira UE-40633 Change 3265647 on 2017/01/20 by Mitchell.Wilson Updating spawn location of the player pawn after unpossessing character in example 1.10. #jira UE-40870 Change 3265612 on 2017/01/20 by Alexis.Matte Prevent name clash warning when doing automation test #jira UE-40788 Change 3265553 on 2017/01/20 by Matthew.Griffin Fixed Shadow variable warning Change 3265366 on 2017/01/20 by Dmitriy.Dyomin Fixed: Vulkan crashes on Adreno Galaxy S7 #jira UE-40840 Change 3265294 on 2017/01/19 by Dmitriy.Dyomin Fixed typo which was causing assert on mobile #jira UE-40633 Change 3265111 on 2017/01/19 by Rolando.Caloca UE4.15 - Fix for scene color crash #jira UE-40633 Change 3264789 on 2017/01/19 by Josh.Adams - Redoing a fix from Dev-Plat for UI_BUILD_SHIPPING_EDITOR #jira UE-40798 Change 3264780 on 2017/01/19 by Rolando.Caloca UE4.15 - Add Morph compute GPU stat #jira UE-40891 Change 3264486 on 2017/01/19 by Mark.Satterthwaite Fix the crash on startup on Intel GPUs - this is due to Intel Metal forcing SM4 to avoid some drivers bugs in SM5 but I got the condition for initialisation in FMinimalDummyForwardLightingResources wrong so it's attempting to create a RWBuffer for SM4 which won't work. #jira UE-40863 Change 3264427 on 2017/01/19 by Rolando.Caloca UE4.15 - Track down crash #jira UE-40633 Change 3264393 on 2017/01/19 by Aaron.McLeran #jira UE-40850 Re-fixing UE-39650 again in 4.15. I hope this bug doesn't regress yet again! Change 3264364 on 2017/01/19 by Daniel.Wright In forward shading SceneCaptureSource modes Normal and BaseColor are replaced with SceneColorHDR as the GBuffer is not available. This is a silent failure for now as there's no good content error reporting mechanism for scene captures. #jira UE-39658 Change 3264284 on 2017/01/19 by Mark.Satterthwaite Duplicate CL #3264251: Modify some asserts in MetalRHI - technically using a store-action of ENoAction on Stencil buffers should make it invalid to restart a render-pass but on Mac it will work because ENoAction won't invalidate anything written. In future we need to use deferred store-actions in Metal so that we can "restart" passes while enforcing correct Load/Store actions. #jira UE-40803 Change 3264282 on 2017/01/19 by Benn.Gallagher CIS fix, bad expression that failed to compile Mac #jira UE-40716 Change 3264257 on 2017/01/19 by Mike.Beach Revising fix in UBlueprint::BeginCacheForCookedPlatformData(), saving off nativization data if the -nativizeAssets param is present (not just if it was enabled in packaging settings). #jira UE-40620 Change 3264242 on 2017/01/19 by Daniel.Wright [Copy] Sharing IndirectLightingCacheTextureSampler samplers #jira UE-40727 Change 3264191 on 2017/01/19 by Ori.Cohen Fix heightfield not working with traces underneath. #JIRA UE-39819 Change 3264139 on 2017/01/19 by Benn.Gallagher Removed collision between clothing in external skeletal mesh components, as clothing simulations could already be in flight and editing collisions while the simulation is running is not supported by APEX #jira UE-40716 Change 3264110 on 2017/01/19 by Max.Preussner MfMedia: Disabled plug-in on Windows 10, because it is currently broken #jira UE-406344 Change 3264108 on 2017/01/19 by Max.Preussner MfMedia: Fixed compile errors on Windows 10 #jira UE-40644 Change 3264099 on 2017/01/19 by Jamie.Dale Adding deprecation warning for 4.14 style PO export #jira UE-40592 Change 3264089 on 2017/01/19 by Matthew.Griffin Reworked DDC commandlet to make sure it actually calls BeginCacheForCookedPlatformData on assets Skip doing this for Engine content if -ProjectOnly is set as that takes a long time and isn't necessary for the way we use it #jira UE-39968 Change 3264065 on 2017/01/19 by James.Golding Fix ModifyCurve node not calling init/update in SourcePose #jira UE-40852 Change 3263729 on 2017/01/19 by Alexis.Matte Fix a bad condition when filling the material sorting array #jira UE-40814 Change 3263704 on 2017/01/19 by Jack.Porter Fix compile error in AndroidESDeferredOpenGL.cpp when " ES Deferred Shading Renderer" is enabled. #jira UE-40659 Change 3263627 on 2017/01/19 by Jack.Porter Fixed black textures when Vulkan is packaged for ETC1 #jira UE-40658 Change 3263554 on 2017/01/19 by Jack.Porter Fixes to HISMC LOD to use new screen size calculation. Solves issue where HISMC was always rendered at lowest LOD. #jira UE-38930 Change 3263535 on 2017/01/19 by Matthew.Griffin Removed unnecessary directories to always cook Problem was actually down to string asset references not being resolved in file set generation Change 3263534 on 2017/01/19 by Matthew.Griffin Added -SkipPublish parameter to BuildLauncherSample command so that we don't chunk and post preflights Change 3263267 on 2017/01/18 by Dan.Oconnor Fix for editing of TMap/TSet variables in structure editor, async tasks, and when using UK2Node_CommutativeAssociativeBinaryOperator. #jira UE-40428 Change 3263219 on 2017/01/18 by Dan.Oconnor Fix copy paste error found by UDN user Craig.Wright that could result in fatal bytecode execution #jira UE-19425 Change 3262980 on 2017/01/18 by Maciej.Mroz #jira UE-40394, UE-40395, UE-40426, UE-40484, UE-40770 Integrated cl 3262851, 3261613, 3260908 from Dev-Blueprint Change 3262908 on 2017/01/18 by Ori.Cohen When refreshing physics assets, don't do so on components that have no bodies. #JIRA UE-40764 Change 3262709 on 2017/01/18 by Matt.Kuhlenschmidt Fix a crash if a background blur widget ends up being negative or zero sized #jira UE-40820 Change 3262606 on 2017/01/18 by Marc.Audy Don't bother the user with force feedback based on where the unpossessed pawn is standing in the world while in simulate mode #jira UE-40785 Change 3262416 on 2017/01/18 by Marc.Audy Reenable audio threading #jira UE-00000 Change 3262125 on 2017/01/18 by Chris.Wood Fixed unnecessary truncate in SMenuAnchor::Tick that caused menu placement to wobble [UE-40293] - Dropdown selection box jitters when mouse is moved over top of it on Mac #jira UE-40293 Change 3262103 on 2017/01/18 by Jamie.Dale Merging some cooker fixes CL# 3262089 - Fixing RedirectCollector issues with projects outside the UE4 directory CL# 3262091 - Guarding against potentially invalid call to FString::Mid CL# 3262094 - Cook on the fly builds now resolve string asset references #jira UE-40790 Change 3262082 on 2017/01/18 by Chris.Bunner Accumulate used particle materials from final mesh material module, not first. #jira UE-39953 Change 3261996 on 2017/01/18 by Matthew.Griffin Allow Samples to be built in pre-flights if you are specifying an engine version Change 3261995 on 2017/01/18 by Matthew.Griffin Resolve string asset references after loading packages to ensure that we find all required files Change 3261934 on 2017/01/18 by Allan.Bentham Bump shader version to force changes in 3260307 to occur. #jira UE-39701 Change 3261842 on 2017/01/18 by Graeme.Thornton Manual copy of CL 3253580 from Dev-Core Added some validation of the class index in exportmap entries #jira UE-37873 Change 3261017 on 2017/01/17 by Mitchell.Wilson Resaving all levels to resolve short form string asset reference warnings. #jira UE-40732 Change 3260918 on 2017/01/17 by Andrew.Rodham Sequencer: Request unloaded levels to be loaded when being made visible through sequencer #jira UE-40082 Change 3260909 on 2017/01/17 by Ben.Marsh Fix error running "Clean" in installed build. #jira UE-40751 Change 3260757 on 2017/01/17 by Jeff.Fisher UE-39654 Crash when launching Google VR project -Via SwitchGameWindowToUseGameViewport we get an early ResizeViewport which does an early Draw. This calls GetStereoProjectionMatrix before the game has ticked and fetched the device info we use to build that matrix. -In this change we make the call to setup that information in the GoogleVRHMD constructor, to ensure it is done before anything tries to use it. -I also added some asserts. #jira UE-39654 #review-3260644 Change 3260637 on 2017/01/17 by Alexis.Matte Fix crash when importing skeletal mesh containing a texture or a material using the same name. #jira UE-40538 Change 3260630 on 2017/01/17 by Marc.Audy When installing a feature pack maintain the include of the template so that any properties inside it are not lost by replacing it with the project's PCH include Update all C++ feature packs to include the original project .h in the files that are copied in to the new project #jira UE-40730 Change 3260600 on 2017/01/17 by matt.barnes Test content for sequencer event tracks #jira UE-29618 Change 3260593 on 2017/01/17 by Mieszko.Zielinski Made FSupportedAreaData export as part of engine API #UE4 #jira UE-40739 Change 3260538 on 2017/01/17 by Marc.Audy Always display axes in debug info, but show -- for value when we don't yet know the ranges #jira UE-40700 Change 3260422 on 2017/01/17 by Marc.Audy Expose level streaming incremental unregister component cvars in the engine streaming section of the project settings #jira UE-10109 Change 3260392 on 2017/01/17 by Ben.Woodhouse Duplicated from CL 3260107: Fix FMonitoredProcess to prevent infinite loop in -nothreading mode #jira UE-40717 Change 3260358 on 2017/01/17 by Chris.Bunner Only validate tonemapper LUT input if actually hooked up. #jira UE-40467 Change 3260327 on 2017/01/17 by Frank.Fella PlatformMediaSource - Fix Validate to check all specified media sources, and change GetURL to get the url for the current platform when running uncooked. #jira UE-40709 Change 3260307 on 2017/01/17 by Allan.Bentham Restore metal compiler's shader source serialization code when the shader is to be compiled at runtime. #jira UE-39701 Change 3260276 on 2017/01/17 by Alex.Delesky #jira UE-40276 - Fixing an issue where a Standalone game launched from the editor cannot toggle fullscreen mode. Change 3260274 on 2017/01/17 by Chris.Wood Added check for null World ptr in AActor::PostEditChangeProperty to fix crash when pasting temporary Actors [UE-40492] - Crash after ejecting from PIE session and selecting a component in the details panel #jira UE-40492 Change 3260230 on 2017/01/17 by Ben.Woodhouse Duplicated from dev-rendering@3232283 D3D12 - downgrade root signature size warning to a log following a discussion with Microsoft. There's not much we can actually do about it, and it's not relevant to all hardware #jira UE-36999 Change 3260096 on 2017/01/17 by Thomas.Sarkanen Fixed crash when rendering out a level sequence with layered animations When a level contained sequences with layered animations that *werent* taking part in the render (i.e. they were not part of the current master sequence) then their instances were initialized but not ticked. When their components then got a call to evaluate their bone transforms, the cached blends were in an uninitialized state. #jira UE-40654 - Render Movie using separate process crashes capture process Change 3259875 on 2017/01/17 by Dmitriy.Dyomin Fixed: SunTemple is washed out in one color on some Android devices #jira UE-40689 Change 3259011 on 2017/01/16 by Max.Chen Matinee to Level Sequence: Make RegisterTrackConverters pure virtual #jira UE-37328 Change 3258992 on 2017/01/16 by Rolando.Caloca UE4.15 - Integrate fix for outlines (3258807) #jira UE-40690 Change 3258949 on 2017/01/16 by mason.seay Disabled TranslatedMass test #jira UE-29618 Change 3258860 on 2017/01/16 by Max.Preussner Media: Prevent loading of media plug-ins in console apps, such as game servers (OR-34819) #jira OR-34819 Change 3258846 on 2017/01/16 by Max.Preussner MfMedia: Fixed incorrect tracks being played in multi-track media sources (UE-39703) #jira UE-39703 Change 3258813 on 2017/01/16 by Benn.Gallagher Added error on import for APEX clothing files that either have no submeshes or have no submeshes with simulated vertices. #jira UE-40614 Change 3258771 on 2017/01/16 by James.Golding Skip fatal warning in UBodySetup::Serialize if duplicating (e.g. spawning component via SCS with a BodySetup in its template) #jira UE-40418 Change 3258747 on 2017/01/16 by Max.Chen Sequencer: AddUnique SequencerActorTag to prevent multiple tags being added when spawning/despawning. #jira UE-40665 Change 3258630 on 2017/01/16 by Jurre.deBaare CIS IfDef issue fix #JIRA UE-1234 Change 3258541 on 2017/01/16 by Phillip.Kavan [UE-40131] Revised fix that will work for "inclusive" BP nativization with data-only BPs. change summary: - revised code in UBlueprint::BeginCacheForCookedPlatformData() to also support the "inclusive" nativization method #jira UE-40131 Change 3258532 on 2017/01/16 by Max.Chen Sequencer: Fix max row index off by one error . This was always incorrect, but it was masked by the fact that FixRowIndices() was called on the track when the UI gets built. That function was removed from the node layer in CL #3252753 and therefore exposed this bug. #jira UE-40642 Change 3258505 on 2017/01/16 by Marc.Audy Improve messaging when installing vehicle and vehicle adv C++ feature packs #jira UE-40647 Change 3258478 on 2017/01/16 by Matt.Kuhlenschmidt PR #3131: UE-40567: Added nullcheck to FSplinePointDetails (Contributed by projectgheist) #jira UE-40567 Change 3258457 on 2017/01/16 by Jurre.deBaare SpeedTree Billboards rendering with Incorrect Material #fix Ensure that we add a section info entry for the billboard models/lods during SpeedTree importing #jira UE-39677 Change 3258442 on 2017/01/16 by Alexis.Matte Skeletalmesh import, make sure we increment the lod index when animation is not imported #jira UE-40640 Change 3258431 on 2017/01/16 by Jurre.deBaare Back out changelist 3258392 #fix issue was already resolved #jira UE-1234 Change 3258392 on 2017/01/16 by Jurre.deBaare Fix for non-unity CIS #JIRA UE-1234 Change 3258358 on 2017/01/16 by Matthew.Griffin Prevent warning from being shown when XMPP module is not built #jira UE-40616 (I guess LoadModule could be changed to LoadModuleChecked now if they do exist) Change 3258144 on 2017/01/15 by Marc.Audy Fix non-unity CIS errors #jira UE-00000 Change 3258141 on 2017/01/15 by zachary.wilson Adding testing content for Distance Field Indirect Shadows #jira UE-29618 Change 3258049 on 2017/01/14 by Nick.Shin UFE sent incorrect header data on missing file also, it seems that UFE was written to expect clients to close the connection -- (this should be closed manually -- which will flush the data and then close out the socket -- but, since this is a developer tool... leaving this as-is) first, 404 was not sending the required double newline after headers second, since connection are not closed manually (server side) send a dummy payload with content-length data #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3257984 on 2017/01/14 by Aaron.McLeran Attempting another fix for static analysis warning in CIS #jira UE-40645 Change 3257904 on 2017/01/14 by Aaron.McLeran Resolving static analysis warnings reported by CIS #jira UE-40645 Change 3257883 on 2017/01/14 by Aaron.McLeran Fixing build warning with CL 3257826 #jira UE-40645 Change 3257826 on 2017/01/13 by Aaron.McLeran Integrating fixes from Dev-Framework and Odin to Release-415 #jira UE-40645 Change 3257654 on 2017/01/13 by Marc.Audy Until plugins can drive their own dependencies vehicle and vehicle adv feature packs will not compile automatically and will pop up a message log informing the user of the actions they need to manually take. #jira UE-40466 Change 3257608 on 2017/01/13 by John.Pollard PC: Assertion Fail with UPackageMapClient::AddNetFieldExportGroup() viewing replays #jira OR-34522 Change 3257489 on 2017/01/13 by Mitchell.Wilson Removing preview mesh from multiple materials to resolve CIS warnings. #jira UE-40628 Change 3257485 on 2017/01/13 by Chris.Babcock Don't initialize FMinimalDummyForwardLightingResources for unneeded feature levels (below SM4) #jira UE-40602 #ue4 #android Change 3257444 on 2017/01/13 by Matt.Barnes Updating test assets for UEQATC-2967 #jira UE-29618 Change 3257324 on 2017/01/13 by Arciel.Rekman Linux: Update runtime CEF lib as well (UE-401413). - Followup to CL 3256081. #jira UE-40413 (Merging CL 3257241 from Dev-Platform to Release-4.15) Change 3257140 on 2017/01/13 by Lina.Halper Fix crash with deleting all poses #jira: UE-40537 Change 3257066 on 2017/01/13 by Jurre.deBaare CIS fix for game builds #jira UE-1234 Change 3257056 on 2017/01/13 by Ben.Zeigler #jira UE-40318 Fix crash in streamablemanager where callbacks would get called on a deleted manager. This is being rewritten in 4.16, so do a quick fix for 4.15 to avoid the crash Change 3256839 on 2017/01/13 by Jurre.deBaare Added conversion of HLOD transition screen size to new transition screen area values #fix During serialization patch up the values of transition screen size within the hierarchical lod setups #misc Updated the default value to a screen size to screen area equivalent #JIRA UE-40518 Change 3256761 on 2017/01/13 by Mieszko.Zielinski Fixed EQS debug rendering not clearing previously displayed labels if new request has no labels #UE4 #jira UE-40589 Change 3256177 on 2017/01/12 by Josh.Adams - Moved the MfMedia plugin outside of XboxOne directory, because it's a Windows plugin as well (that happens to also work on XboxOne - all public APIs) #jira UE-40391 Change 3256131 on 2017/01/12 by Jamie.Dale Fixing log spam when trying to load an empty font data #jira UE-40555 Change 3256081 on 2017/01/12 by Arciel.Rekman Fixed CEF compatibility problems on Ubuntu 14.04 (UE-40413). - Also deleted Debug version of it. - Change by yaakuro. #jira UE-40413 (Edigrating CL 3256065 from Dev-Platform to Release-4.15) Change 3256046 on 2017/01/12 by Jon.Nabozny Use PxConvexFlag::eSHIFT_VERTICES when cooking meshes to fix baked in transforms. #jira UE-39212 Change 3255939 on 2017/01/12 by mason.seay Rebuilt lighting #jira UE-29618 Change 3255912 on 2017/01/12 by Olaf.Piesche Replicating fix from 3246828 for #jira UE-39249 Change 3255909 on 2017/01/12 by Rolando.Caloca UE4.15 - Support for choosing discrete AMD GPU #jira UE-40546 Change 3255835 on 2017/01/12 by Martin.Wilson Fix newly added virtual bones not being on screen. #jira UE-40516 Change 3255774 on 2017/01/12 by Mark.Satterthwaite Merging 3251926 for Richard.Wallis: #jira UE-38828 Crash after Enabling Forward Shading on Mac and Creating/Editing Materials. Using TGlobalResource to avoid constant resource allocation. Prev fix (in CL 3239454) caused a crash in D3D11 with zero sized resource views. Change 3255771 on 2017/01/12 by Alexis.Matte Fix a crash when re-importing asset with no material #jira UE-40510 Change 3255746 on 2017/01/12 by Jon.Nabozny Change _DEBUG to PX_DEBUG in ConvexHullLib.cpp #jira UE-0000 Change 3255659 on 2017/01/12 by Jon.Nabozny Enable Shifting Vertices during Convex Hull cooking to prevent precision issues. (Copied CL-3249100 from Dev-Phyics-Upgrade to support new flag) #jira UE-39212 Change 3255617 on 2017/01/12 by Ori.Cohen Fix crash when computing mass for an async object. Using passed in rigid body instead of assuming SyncRigidActor #JIRA UE-40458 Change 3255536 on 2017/01/12 by Jamie.Dale Fixed crash when using an object picker against the 'Object' type This also optimizes some filter code to avoid filtering when it would be pointless (and just slows things down). #jira UE-40408 Change 3255451 on 2017/01/12 by Chris.Wood Fixed read only text color in SCommentBubble [UE-40384] - Reference Viewer comment text is difficult to read Also changed DetermineForegroundColor() method in EditableTextBox classes to fallback on ForegroundColorOverride if it is set and ReadOnlyForegroundColorOverride isn't set. #jira UE-40384 Change 3255448 on 2017/01/12 by Chris.Wood Removed blinking cursor/caret on read only editable text layouts. [UE-40502] - Flashing cursor/caret showing in read-only editable text layouts #jira UE-40502 Change 3255445 on 2017/01/12 by Marc.Audy Create the dynamic level streaming persistent object correctly outered to the World rather than the transient package to avoid GetWorld() crashing #jira UE-00000 Change 3255441 on 2017/01/12 by Jon.Nabozny Regenerate collision for the basic Cube mesh to fix resting issues and invalid verts. #jira UE-40478 Change 3255407 on 2017/01/12 by Yannick.Lange VREditor: - Fix: Assertion Failed crash after pressing F8 in PIE while Foliage Mode was selected - Fix: Assertion Failed crash after pressing F8 in PIE while Paint Mode was selected - Added extra checks for other possible future cases #jira UE-39786 UE-39789 Change 3255393 on 2017/01/12 by Chris.Bunner Duplicating CL 3255244: Removed test variable from MaterialExpressionVectorParameter. #jira UE-40517 Change 3255375 on 2017/01/12 by Steve.Robb CIS fix. #jira UE-39556 Change 3255334 on 2017/01/12 by samuel.proctor Corrected QA Container asset to remove pin warning. #jira UE-29618 Change 3255319 on 2017/01/12 by james.cobbett Fixing motion blur issue with test content for Pose Snapshots. #jira UE-29618 Change 3255247 on 2017/01/12 by Nick.Darnell Slate - Slate's Tab Manager is now a bit smarter about allowing Focus/BringToFront attention grabbing methods. In order to make the UI less jumpy it was restricted to only allowing alerts and bring to front to be triggered if you were on the window, or child window of the active application window. That can negatively impact cases where a user takes an action (clicks a link ro button saying open/goto this tab), that is on another window. To work around this limitation, the Tab Manager will also permit the action if Slate is currently processing user input, implying that the action being taken is in direct response to the user pressing a button and interacting with the UI. #jira UE-40313 Change 3255236 on 2017/01/12 by Phillip.Kavan [UE-40131] Non-native child BPs can now properly override a nativized parent BP's components in a cooked build with exclusive Blueprint class nativiation. - Mirrored from //UE4/Dev-Blueprints (CL# 3254024,3254391) #jira UE-40131 Change 3255216 on 2017/01/12 by Rolando.Caloca UE4.15 - Fix compile issue on Vulkan 1.0.37.0 or newer #jira UE-40506 Change 3255206 on 2017/01/12 by Steve.Robb Use outer walking IsA() implementation in editor to get around reinstancing and hot reload issues. #fyi mike.beach #jira UE-39556 Change 3255195 on 2017/01/12 by mason.seay Adjusted slope to fix platform discrepancy #jira UE-29618 Change 3255086 on 2017/01/12 by Jack.Porter Fix XboxOneShaderCompiler.cpp non-unity compilation #jira None Change 3255085 on 2017/01/12 by Jack.Porter Missing HTML5 changes from CL 3254907 #jira UE-39111 Change 3255031 on 2017/01/12 by Jack.Porter More iOS GoogleVR changes missing from CL 3254907 #jira UE-39111 Change 3254991 on 2017/01/12 by Jack.Porter Missing file from CL 3254907 #jira UE-39111 Change 3254907 on 2017/01/11 by Jack.Porter Android MSAA changes - use r.MobileMSAA cvar, support more than 2x, fix issues where targets other than scene color were created with MSAA #jira UE-39111 #jira UE-35849 #jira UEMOB-35 Change 3254810 on 2017/01/11 by Arciel.Rekman Linux: fix for crash on exit (UE-40488). #jira UE-40488 Change 3254617 on 2017/01/11 by Peter.Sauerbrei remake the fix for missing PhysXVehicle library in binary for IOS and TVOS #jira UE-39349 Change 3254489 on 2017/01/11 by mason.seay Other minor improvements to the map #jira UE-29618 Change 3254477 on 2017/01/11 by mason.seay Map tweaks to prevent the vehicle from getting stuck #jira UE-29618 Change 3254431 on 2017/01/11 by Mitchell.Wilson Rebuilt lighting on all StarterContent levels. #jira UE-40468 Change 3254333 on 2017/01/11 by mason.seay Adjusted lightmap on mesh to remove odd rendering splotches #jira UE-29618 Change 3254131 on 2017/01/11 by Rolando.Caloca UE4.15 - Missing dumped shaders #jira UE-40465 Change 3254126 on 2017/01/11 by Jeff.Fisher UE-40422 Vive Motion Controllers unable to Play Haptic Effect -Removed an unnecessary remapping of controllerindex to deviceid, they are the same now. #jira UE-40422 #review-3254084 Change 3254046 on 2017/01/11 by Mark.Satterthwaite Merging 3233811: Fix compiling QA-Material tessellation shaders that don't need to emit from Hull or sample in Domain the HSOut buffer which was confusing MetalBackend. #jira UE-39935 Change 3254021 on 2017/01/11 by james.cobbett Test content for Pose Snapshot testing #jira UE-29618 Change 3253993 on 2017/01/11 by Alexis.Matte Fix the morph target import #jira UE-40424 Change 3253948 on 2017/01/11 by mason.seay Fixed Level BP logic that was causing Access None error #jira UE-29618 Change 3253884 on 2017/01/11 by mason.seay Updated mesh colors on map. Disabled motion blur #jira UE-29618 Change 3253862 on 2017/01/11 by mason.seay Disabled Always Show Mobile Input (turned on by accident) #jira UE-29618 Change 3253859 on 2017/01/11 by Mark.Satterthwaite Merging 3252866: Fix Metal shader pipeline hash collisions caused by deferring MTLFunction construction until PrepareToDraw so that we may use Function-Constants to specialise the shader source without generating additional permutations. This is required to generate proper tessellation shaders which are specialised against the index-buffer usage & type (none, uint16, uint32). While we're here amend the hash functions to make better use of the existing hash functions to improve the distribution and hopefully reduce the possibility of collisions in future. #jira UE-40357 Change 3253854 on 2017/01/11 by Mark.Satterthwaite Merging 3252859: Fix the calculation of Metal tessellation struct alignment and size to use largest member size, so that we don't assert in debug or cause out-of-bounds access in development/shipping. #jira UE-40410 Change 3253853 on 2017/01/11 by Mark.Satterthwaite Merging 3237394: Add Metal-specific permutations of TBasePassHS - they affect the C++ definition on all platforms but are only cached or used on Metal - because the way we compile the combined VS+HS tessellation stage requires that the combined VS + HS HLSL code references the same resources, otherwise we get incorrect resouce bindings and subsequently fail to render properly. Long-term the Metal tessellation code will need to be refactored so that the vertex shader stage is emitted as a separate shader from the hull shader stage as this but will keep cropping back up and continue to complicate the engine. #jira UE-39799 Change 3253852 on 2017/01/11 by Mark.Satterthwaite Merging 3236850: Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3253834 on 2017/01/11 by mason.seay Updated mobile input textures to be power of two #jira UE-29618 Change 3253807 on 2017/01/11 by Mark.Satterthwaite Merging 3232641 & 3236788 & 3233854 & 3249742 from Dev-Rendering: 3232641: - Eliminate redundant state changes in MetalRHI in the state cache. - Add a new debug level for setting buffers to nil prior to calls to set*Bytes so that the tool doesn't display incorrect data. - Make testing for validation & statistics features use the same EMetalFeatures API as everything else for consistency. - Cache the fallback depth-stencil texture in the state cache and ignore it for determining whether a pass can restart - if we are using this texture its contents are worthless anyway. 3236788: Fix 10.11.6 support (aka -nometalv2): the stencil view workaround necessitates a mid-render blit and the way things were setup resulted in the HasValidRenderTargets assert firing. Refactored the code to separate the concept or valid render-states in the cache from active render-states in the render-pass. Now it works as intended and will be needed for 4.15. 3233854: More information about texture type validation errors in Metal. 3249742: Fix missing GPU particles on Mac. Pointers getting reused is causing the blendstate equality operator to fail. Simple workaround until we have time for a proper fix. #jira UE-40200 Change 3253636 on 2017/01/11 by Chris.Wood Improved tracking of runtime and debugger attachment for analytics purposes. [UE-39780] - Change IsDebugger to WasDebuggerPresent in all crash/AS analytics [UE-39777] - Update MTBF IsDebugger state for every heartbeat [UE-39778] - UnrealWatchdog to send WasDebuggerPresent state for app if set [UE-39779] - UnrealWatchdog to send total run time of process Debugger state was previously read once at startup or once at the time of an event. Debugger is now checked during the heartbeat and doesn't reset flag when detached so we know if a session was ever debugged. Also reporting total run time in UnrealWatchdog. Watchdog still doesn't run when debugging but and will never show popups to a debugger user even when forced on with -forcewatchdog. #jira UE-39780, UE-39777, UE-39778, UE-39779 Change 3253281 on 2017/01/10 by Dan.Oconnor Typo fix caused parameter in local struct definition to shadow the local #jira UE-40027 Change 3253231 on 2017/01/10 by Dan.Oconnor Mirror of 3253220 These pins should infer together #jira UE-40427 Change 3253125 on 2017/01/10 by Uriel.Doyon Brought back CL 3242117 and 3238685, which got lost on the way: - Fix for possiblel check fail when changin mobility of actors. - Fix for possible check fail when processing streaming data. #jira UE-39996 Change 3252936 on 2017/01/10 by Marc.Audy CopyPropertiesForUnrelatedObjects needs to consider path not just name of subobjects when matching them up to copy properties and update references Ensure that a reinstanced child actor component ends up pointing at the correct child actor template #jira UE-40027 Change 3252886 on 2017/01/10 by Lina.Halper Fix for invalid AnimCurves when curve is added while running #jira: UE-39826 Change 3252753 on 2017/01/10 by Frank.Fella Sequencer - Change track rows to use separate track nodes in the display node tree, fixes key edit issues on animation and audio tracks. #jira UE-39836 Change 3252640 on 2017/01/10 by Lukasz.Furman fixed NavCollision losing user settings after any property change copy of 3252628 #jira UE-40388 Change 3252614 on 2017/01/10 by Daniel.Wright UStaticMeshComponent::InvalidateLightingCacheDetailed uses MarkRenderStateDirty. Massively speeds up duplication of HISMC with many instances (10+ minutes -> seconds), as InvalidateLightingCacheDetailed gets called for every instance. #jira UE-40406 Change 3252609 on 2017/01/10 by mason.seay Updated map with text actors for more visual clarity #jira UE-29618 Change 3252477 on 2017/01/10 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios #jira UE-39852 Change 3252451 on 2017/01/10 by Daniel.Wright Garbage collection calls UWorld>SendAllEndOfFrameUpdates() on all loaded worlds first so that deferred recreate render states happen before any UObjects are deleted * Fixes rendering thread crashes in the order of events of 1) SetMaterial 2) GC 3) Rendering command that dereferences the UMaterial #jira UE-30089 Change 3252418 on 2017/01/10 by Ben.Zeigler #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. Change 3252410 on 2017/01/10 by Max.Chen Sequencer : Filter sections on select in range Copy from Dev-Sequencer #jira UE-37854 Change 3252385 on 2017/01/10 by Max.Chen Sequencer: Update auto tangents when setting key time. This fixes a bug where dragging keys with auto tangents doesn't recompute tangents properly. #jira UE-39923 Change 3252360 on 2017/01/10 by Allan.Bentham Remove incorrect assert for iOS. #jira UE-40385 Change 3252297 on 2017/01/10 by mason.seay Test assets for suspending cloth simulation #jira UE-29618 Change 3252125 on 2017/01/10 by Mieszko.Zielinski Fallout fix after removal of BlackboardKeyUtils::CalculateComparisonResult declaration from the AIModule #UE4 #jira UE-40099 Change 3251987 on 2017/01/10 by Allan.Bentham Fix HQ DoF #jira UE-35548 Change 3251856 on 2017/01/10 by Jack.Porter Fixed Get Instances Overlapping Box blueprint function due to issue with FBox constructor. Added MakeBox and MakeBox2D kismet native functions Fixed box overlap test ignoring instance scale #jira UE-34409 Change 3251519 on 2017/01/09 by Daniel.Wright [Copy] Fixed GLandscapeLayerUsageMaterial getting GC'ed #jira UE-40055 Change 3251146 on 2017/01/09 by Lina.Halper Fix on stable track data carrying over to pose asset - decided to clean up track data in anim sequence since we don't really need that data anymore #jira: UE-40351 #code review: Martin.Wilson Change 3251056 on 2017/01/09 by Lina.Halper fixed crash when pose node contains stale data when updating source. #jira: UE-40258 #code review; Thomas.Sarkanen Change 3251035 on 2017/01/09 by Mitchell.Wilson Removed preview mesh in M_GodRay to resolve CIS warning. Relinked textures used in two materials to resolve CIS warnings. #jira UE-40350 Change 3250959 on 2017/01/09 by Mitchell.Wilson Updating master sequence playback end time so the final audio track can be heard. Updating multiple shots to resolve issues with audio not playing back properly. #jira UE-40321 UE-40335 Change 3250896 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed level visibility not working in PIE #jira UE-40082 Change 3250895 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed evaluation of overlapping audio and skeletal aninmation sections - Audio and skeletal animation sections now continue to support legacy evaluation order. Overlapping sections of the same priority on the same row will be filtered out such that only the section with the latest start time will be evaluated. #jira UE-40320 Change 3250830 on 2017/01/09 by Ben.Woodhouse Duplicated from //ue4/Release-4.14 CL 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 UE-38818 Change 3250790 on 2017/01/09 by Lauren.Ridge Fixing backspace on VR Editor numberpad menu. #jira UE-39770 Change 3250681 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@3249296: XB1/Fast semantics: Add missing L1/L2 cache flush on transition to readable (or RW). The missing cache flush was causing indeterminism when reading from a texture shortly after writing to it as a render target. This fixes bloom and diffuse irradiance issues The bug has been there for a while, but CL 3227787 (drawclear early out) caused it to manifest #jira UE-39727 #jira UE-40238 Change 3250680 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@3238664 Fix dbuffer decal rendering issues in fullscreen on PC. Also fixes crash in editor when viewing dbuffer materials. Pass clearcolor in RT params for system textures to workaround a bug with ClearColorTexture not working in fullscreen mode on DX11. Make sure dbuffer targets are bound if we're rendering mesh decals #jira UT-6891 #jira UE-39842 #jira UE-39949 Change 3250609 on 2017/01/09 by Steve.Robb Maximum number of stats-using threads increased to 512. #jira UE-38153 Change 3250604 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed incorrect seed being used when generating new animation type IDs for object properties #jira UE-40327 Change 3250589 on 2017/01/09 by Matthew.Griffin Changed publish symbols node to use runtime dependencies instead of manually including the whole PhysX folder Avoids unused configs and VS2013 files #jira UE-39171 Change 3250578 on 2017/01/09 by Matthew.Griffin Removed art tools from released build now that they are available separately on the Marketplace Change 3250282 on 2017/01/07 by Mieszko.Zielinski Fixed UNavigationSystem::bNavigationAutoUpdateEnabled getting ignored by recent addition to related condition in UNavigationSystem #UE4 Reported by UT team. Replication of a fix from Dev-Framework that didn't make it to 4.15 stream #jira UE-40324 Change 3250276 on 2017/01/07 by Mieszko.Zielinski Fixed not being able to add elements to UAIPerceptionStimuliSourceComponent.RegisterAsSourceForSenses for instances manually placed on the map #UE4 #jira UE-31711 Change 3250219 on 2017/01/07 by Mieszko.Zielinski Extended comment to AISenseConfig_Sight::PeripheralVisionAngleDegrees to make it clear how it works #UE4 #jira UE-31731 Change 3250147 on 2017/01/07 by Andrew.Rodham Added missing includes #jira UE-40019 Change 3250096 on 2017/01/06 by Nick.Shin refetch on timed out GET/POST requests correction to: UE_MakeHTTPDataRequest #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3249963 on 2017/01/06 by Mieszko.Zielinski removed unused and undefined BlackboardKeyUtils::CalculateComparisonResult #UE4 #jira UE-40099 Change 3249829 on 2017/01/06 by Alexis.Matte turn on the material name clash feature for the content browser importer. #jira UE-40298 Change 3249791 on 2017/01/06 by andrew.porter QAGame: Added level blueprint logic to QA-Sequencer that lets tester override sequence bindings #jira UE-29618 Change 3249755 on 2017/01/06 by Jamie.Dale Some fixes for object reference detection and notification when deleting assets #jira UE-40121 Change 3249727 on 2017/01/06 by James.Golding #jira UE-40242 Change 3249707 on 2017/01/06 by Mitchell.Wilson Removing preview mesh with incorrect path from materials to resolve warnings in CIS. #jira UE-40311 Change 3249543 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3249506 on 2017/01/06 by Alexis.Matte Make sure we use the correct LodIndex when importing a new LOD in case a previous LOD import fail. #jira UE-40240 Change 3249477 on 2017/01/06 by Ori.Cohen Fix incorrect warning when moving kinematic objects during simulation. #JIRA UE-40290 Change 3249472 on 2017/01/06 by Andrew.Rodham Sequencer: Undo now works as expected when editing the properties of a key #jira UE-40019 Change 3249390 on 2017/01/06 by Mitchell.Wilson Removing preview meshes with improper path from materials to resolve CIS warnings in landscape mountains sample. #jira UE-40300 Change 3249317 on 2017/01/06 by Alexis.Matte Fix a crash when loading skeletalmesh with no section #jira UE-40249 Change 3249294 on 2017/01/06 by Mitchell.Wilson Updated defaultengine.ini for Match 3 to resolve warnings in CIS. ServerDefaultMap and TransitionMap had invalid paths. #jira UE-40295 Change 3249213 on 2017/01/06 by Chris.Bunner 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. #jira OR-33525, OR-33536, OR-33540, OR-33520 Change 3249135 on 2017/01/06 by Martin.Wilson Fix root motion issues on additive animations. - Fix scale issue on resetting root bone - Fix loss of root motion when animation is additive. #jira UE-40232 Change 3248522 on 2017/01/05 by Alexis.Matte Fix a crash when reimporting morph target. Also fix a crash when initiating ColorVertexBuffer with NULL value #jira UE-40201 Change 3248271 on 2017/01/05 by Andrew.Rodham Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence #jira UE-40234 Change 3248092 on 2017/01/05 by Ben.Marsh UBT: Remove the [Obsolete] attribute from methods in TargetRules; the [ObsoleteOverride] attribute gives a much better (and more concise) warning with specific instructions on how to resolve it. Change 3248091 on 2017/01/05 by Marcus.Wassmer Tick renderthreadtickables in -onethread to avoid leaks. #jira UE-40248 Change 3248063 on 2017/01/05 by Marc.Audy Route FAudioDevice::StopAllSounds to the audio thread if called on the game thread #jira UE-40243 Change 3247995 on 2017/01/05 by Maciej.Mroz NativizationSummary object is always present. manually merged cl#3247985 from Dev-Blueprints #jira UE-40035 Change 3247873 on 2017/01/05 by Chad.Garyet Adding "Generate QA Labels" buildgraph node and automation script. Port of createNewLabel and createMinimumLabel python scripts into UAT #jira UEB-725 Change 3247855 on 2017/01/05 by Nick.Shin refetch on timed out GET/POST requests #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3247737 on 2017/01/05 by Marc.Audy static mesh component instance data now correclty inherits from pritive component instance data instead of skipping it and inheriting directly from scene component instance data #jira UE-40053 Change 3247723 on 2017/01/05 by mason.seay Asset for suspend cloth bug #jira UE-29618 Change 3247708 on 2017/01/05 by Mitchell.Wilson Updating project settings to disable dbuffer decals to resolve rendering issues in Showdown while using -game -vr #jira UE-40195 Change 3247652 on 2017/01/05 by Martin.Wilson Fixes for animation notifies window -Fix notify not being removed from skeleton -Fix crash where editor is not refreshed after notify removal #jira UE-40154 Change 3247638 on 2017/01/05 by mason.seay Test assets for cloth suspension #jira UE-29618 Change 3247630 on 2017/01/05 by Alexis.Matte Prevent crash when the import fail and we have no staticmesh created #jira UE-40024 Change 3247556 on 2017/01/05 by Ben.Marsh Fix non-unity compile error. Change 3247547 on 2017/01/05 by Jurre.deBaare Crash while using the Delete Button in the HLOD Outliner while a Generated Proxy Mesh is opened in the Static Mesh Editor #fix Unify path for both delete cluster options in the outliner UI #jira UE-40066 Change 3247539 on 2017/01/05 by Benn.Gallagher Fixed serialization crash for simplified skeletal meshes leading to corrupted assets that crash on load after skin weight buffer changes. #jira UE-40199 Change 3247515 on 2017/01/05 by Allan.Bentham Fix inverted planar reflections when mobileLDR Fixed incorrect gamma 2 planar reflection rendering when mobileLDR #jira UE-32868 Change 3247502 on 2017/01/05 by Dmitriy.Dyomin Fixed: Single digit frame rate when sculpting landscape foliage. #jira UE-39532 Change 3247232 on 2017/01/04 by Ben.Marsh Remove private include from public header. Prevents compiling samples from installed build of the engine without private headers. #jira UE-40135, UE-40137, UE-40139, UE-40140, UE-40141, UE-40142, UE-40143, UE-40144 Change 3247002 on 2017/01/04 by Chris.Babcock Changed Vulkan hitchy pipeline log message verbosity #jira UE-38354 #ue4 #android #dontbackcopy Change 3246927 on 2017/01/04 by matt.barnes Updating QAGame content to facilitate UEQATC-2969 #jira UE-29618 Change 3246894 on 2017/01/04 by Mike.Beach Mirroring CL 3245322 from Dev-BP Fixed a crash when implementing a native interface in a BP #jira UE-40155, UE-40203 Change 3246830 on 2017/01/04 by Chris.Bunner Allow AllocGBuffer call when in simple-forward so dummy uniform buffer creation can occur. #jira UE-39756 Change 3246816 on 2017/01/04 by Jon.Nabozny Fix Anim Notifies Tab not opening in Animation Editor. #JIRA UE-40134 Change 3246804 on 2017/01/04 by Ori.Cohen Touch engine file to trigger re-link. #JIRA UE-40156 Change 3246709 on 2017/01/04 by mason.seay Updated map #jira UE-29618 Change 3246606 on 2017/01/04 by Ori.Cohen 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. #tests Compiled Linux server with the changed PhysX and continuously ran bot matches for about a day. #JIRA UE-40156 Change 3246571 on 2017/01/04 by Marc.Audy 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 #jira UE-39994 Change 3246527 on 2017/01/04 by tim.gautier QAGame: BP_MediaPlayer now displays the name of the MediaPlayer plugin currently in use during playback #jira UE-29618 Change 3246480 on 2017/01/04 by mason.seay Map update #jira UE-29618 Change 3246470 on 2017/01/04 by Ori.Cohen Guard against infinitely thin geometry which fixes some nans. This showed up as issues in various projects #JIRA UE-00000 Change 3246413 on 2017/01/04 by Jon.Nabozny Cube asset did not have Tri Meshes. Reimported to fix the issue. -- Copied from 3233164 -- #jira UE-39657 Change 3246388 on 2017/01/04 by Jon.Nabozny Set 'p.MoveIgnoreFirstBlockingOverlap' to be enabled by default (3158732). This causes collision behavior to remain unchanged unless people opt in to the new behavior. -- Copied from 3239735 (bot health fixed by a different CL) -- #jira UE-39387 Change 3246352 on 2017/01/04 by Jon.Nabozny Fix FPredictProjectilePathParams to use a valid default value for TraceChannel. This requires the use of a new bool bTraceWithChannel which is enabled by default. -- Copied from 3239765 -- #JIRA UE-39726 Change 3246341 on 2017/01/04 by Ori.Cohen Allow vehicles to inherit from PawnMovementComponent and only use the pawn/ai capabilities when a Pawn owner is used. #JIRA UE-39508 Change 3246178 on 2017/01/04 by Andrew.Rodham Sequencer: When playback stops naturally, the play position is set to the boundary that caused playback to stop (the end if playing forwards, the start if playing backwards) - This is to reconcile the movie scene sequence player with previous behaviour #jira UE-40076 Change 3246102 on 2017/01/04 by Benn.Gallagher Fixed single threaded physics dispatcher triggering checks from clothing when running with a CPU with two or fewer cores. #jira UE-39811 Change 3246100 on 2017/01/04 by Benn.Gallagher Fixed ensure triggered when using root motion with sub instances Fixed crash reinstancing an active anim class that had subinstances #jira UE-39582 #jira UE-39579 Change 3246092 on 2017/01/04 by Marc.Audy PR #3082: Improve comment for UInputComponent (Contributed by Soleone) #jira UE-40098 Change 3246084 on 2017/01/04 by Matthew.Griffin Remove bad files Change 3246076 on 2017/01/04 by Matt.Kuhlenschmidt Fixed all non-editable text properties having a double disabled effect. The text box is read only which prevents edting but still allows copying text from it. This feature had regressed and the disabled effect on top of the read only effect made it too difficult to see the text. #jira UE-39652 Change 3246043 on 2017/01/04 by Steve.Robb Use of CastChecked instead of Cast in implementations of IStructSerializerBackend::WriteProperty. This is both more efficient and will hopefully make it easier to diagnose the issue. #jira UE-39872 Change 3246032 on 2017/01/04 by Martin.Wilson Change FindBoneIndex to FindRawBoneIndex (final bone maps are not built until after all adding is done so they will not be found) #jira UE-40105 Change 3246016 on 2017/01/04 by Andrew.Rodham Editor: Insert/Duplicate/Delete menu on array properties now only closes itself on click, rather than all menus - This allows us to edit such properties on context menus #jira UE-39998 Change 3246005 on 2017/01/04 by Thomas.Sarkanen Fixed asset attachment issues in Skeleton Tree Assets were being attached uniquely, so only one asset could be attached to a bone/socket. However the calling code didnt know that the unique attachment function just gave up, so the item just got added to the bottom of the tree. The attachment filter was not set correctly to allow for bone attatchments, so only sockets could be attached to. The attach parent name was not initialized, so assets could not be deleted one at a time. #jira UE-40040 - With multiple Preview assets on one bone, only one appears in Skeleton Tree #jira UE-40041 - Preview assets appear at the bottom of the skeleton tree Change 3246002 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed actor tick prerequisites not getting set up correctly for master sequences #jira UE-39975 Change 3245979 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed scrubbing audio tracks not working propertly #jira UE-40048 Change 3245978 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed dropping a level onto a level visibility section not marking the track as changed, and not correctly creating a transaction #jira UE-39998 Change 3245977 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed crash caused by lingering persistent evaluation data #jira UE-40064 Change 3245971 on 2017/01/04 by Dmitriy.Dyomin Fixed: Using Set World Origin Location will cause the player pawn to stutter #jira UE-40022 Change 3245725 on 2017/01/03 by Matt.Barnes Further improvments on test assets for UEQATC-2963 #jira UE-29618 Change 3245658 on 2017/01/03 by Arciel.Rekman Linux: fix ARM32 build (UE-39913). #jira UE-39913 (Redoing CL 3240982 from Dev-Platform in Release-4.15) Change 3245577 on 2017/01/03 by Mason.Seay More vehicle updates #jira UE-29618 Change 3245556 on 2017/01/03 by Matt.Barnes Updating test content for UEQATC-2963 #jira UEQATC-2963 Change 3245461 on 2017/01/03 by mason.seay Updating Inertia Tensor Scale to improve Vehicle Handling #jira UE-40013 Change 3245442 on 2017/01/03 by Jeff.Fisher UEVR-495 Assert when switching to 2d mode. sceHmdReprojectionStart failing. -There was a race condition between switching output modes on the render thread and sceHmdReprojectionStart on the RHI thread. The flush fixes that. The reprojection would simply have failed that frame previously in shipping which would not matter much as we are switching output modes anyway. #jira UEVR-495 #review-3245374 Change 3245427 on 2017/01/03 by Jeff.Fisher UEVR-456 check if we are using camera before doing camera disconnected dialog on PSVR -If the tracker is active, but we are tracking nothing (ie we have the morpheus hmd tracking plugin, and started up with it, but switched to 2d mode) don't pop up the camera setup warning until we start trying to track something again. -This is useful for apps that have 2d and vr modes. #jira UEVR-456 #review-3245372 Change 3245329 on 2017/01/03 by mason.seay Level and vehicle tweaks #jira UE-29618 Change 3245275 on 2017/01/03 by Chris.Babcock Added EngineVersion to AndroidManfiest.xml metadata #jira UE-40123 #ue4 #android Change 3245235 on 2017/01/03 by Guillaume.Abadie Cherry picks CL 3234813 from Dev-Rendering: Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3245183 on 2017/01/03 by Chris.Babcock Added missing #undef LOCTEXT_NAMESPACE to some files (contributed by projectgheist) #jira UE-40103 #PR #3085 #ue4 #android Change 3245120 on 2017/01/03 by mason.seay Missed some assets #jira UE-29618 Change 3245116 on 2017/01/03 by mason.seay Mass fucntional test #jira UE-29618 Change 3245049 on 2017/01/03 by Ben.Marsh PR #3086: Fixed ScriptGeneratorPlugin #includes (Contributed by projectgheist) Change 3244924 on 2017/01/03 by Ben.Zeigler #jira UE-40057 Fix regression in public access for SwapPlayerControllers, from GitHub #3072 Change 3244831 on 2017/01/03 by Mitchell.Wilson Fixed hole in collision around level. #jira UE-39576 Change 3244817 on 2017/01/03 by Matthew.Griffin Change check for files being under engine directory to avoid problems with relative paths #jira UE-40096 Change 3244801 on 2017/01/03 by Andrew.Rodham Editor: Fixed color picker not working when opened from a details panel on a context menu - When a color picker is opened from a details panel that's on a context menu, it now opens as a sub menu - Added the ability to find an open menu from a widget path to FSlateApplication #jira UE-39932 Change 3244776 on 2017/01/03 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3244672 on 2017/01/03 by Ben.Marsh Search all directories containing universal CRT installations from the registry, rather than assuming that the first one found will contain the universal CRT version we want to use. Attempt to fix issues described in PR #3059. Change 3244668 on 2017/01/03 by Thomas.Sarkanen Added "Reimport Animation" and "Export to FBX" to the animation editor toolbar Options were in the asset menu before. #jira UE-39643 - Missing "Reimport" option for animation assets Change 3244667 on 2017/01/03 by Thomas.Sarkanen Reduced default URO distances in-line with new LOD calculations New values should give (roughly) the same effect as the older values with the older system. #jira UE-39939 - URO LOD distance factors different with the new screen size metric Change 3244654 on 2017/01/03 by Matthew.Griffin Added functionality to specify Loading Phase for plugin templates Changed Blueprint Library Template so that it loads pre loading screen and can be linked correctly in blueprints that use it #jira UE-38826 Change 3244631 on 2017/01/03 by Dmitriy.Dyomin Fixed: TM_Landscape_LOD Folder does not Live Update contents after generating LODs with Create Per Package Asset #jira UE-37368 Change 3244548 on 2017/01/02 by Jack.Porter Fix for Post-process Materials rendering incorrectly in editor mobile preview after viewport is resized #jira UE-39905 Change 3244389 on 2016/12/30 by Phillip.Kavan [UE-39816] Fix broken pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself. Mirrored from //UE4/Dev-Blueprints (CL# 3244388). #jira UE-39816 Change 3244248 on 2016/12/29 by laz.matech Saved the new sublevel in the persistent level and set it to hidden by default #jira UE-29618 Change 3244213 on 2016/12/29 by laz.matech Added a sublevel to QA-Sequencer map #jira UE-29618 Change 3243857 on 2016/12/27 by samuel.proctor Altered Container asset to have proper console input #jira UE-29618 Change 3243852 on 2016/12/27 by Mason.Seay Forgot config file #jira UE-29618 Change 3243847 on 2016/12/27 by mason.seay Improved mobile input #jira UE-29618 Change 3243536 on 2016/12/24 by Phillip.Kavan [UE-39944] Extend the GetClassDefaults node to include output pin exceptions for TSet/TMap properties (i.e. mirror safeguards already in place for TArray). Mirrored from //UE4/Dev-Blueprints (CL# 3243210). #jira UE-39944 Change 3243535 on 2016/12/24 by Phillip.Kavan [UE-39816] Renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded. Mirrored from //UE4/Dev-Blueprints (CL# 3243207). #jira UE-39816 Change 3243534 on 2016/12/24 by Phillip.Kavan [UE-39733] Fix incorrect graph pin value display names for user-defined enum types. Mirrored from //UE4/Dev-Blueprints (CL# 3239965). #jira UE-39733 Change 3243532 on 2016/12/24 by Phillip.Kavan [UE-39854] Fix nativized assets build error when there are no native code dependencies. Mirrored from //UE4/Dev-Blueprints (CL# 3239778). #jira UE-39854 Change 3243529 on 2016/12/24 by Phillip.Kavan [UE-38999] Dump component tree node hierarchy to the output log on error state during widget generation. Mirrored from //UE4/Dev-Blueprints (CL# 3239289). #jira UE-38999 Change 3243442 on 2016/12/23 by mason.seay QAGame cleanup - Replacing copy pose from mesh test assets #jira UE-29618 Change 3243215 on 2016/12/22 by Dmitriy.Dyomin Fixed: Switching to ES2 feature level preview renders black in editor #jira UE-40009 Change 3243185 on 2016/12/22 by Ryan.Vance #jira UEVR-478 Integrating 3235308 Mono changes from DevVR. Change 3243183 on 2016/12/22 by Ryan.Vance #jira UEVR-455 Integrating 3243173 post present call back implementation from 4.14.1 Change 3243182 on 2016/12/22 by Ryan.Vance #jira UE-39269 Working around a nullptr deref in the Oculus runtime. Change 3243153 on 2016/12/22 by mason.seay WIP map update #jira UE-29618 Change 3243128 on 2016/12/22 by andrew.porter QAGame: Adding Actor Sequence test content for a crash. #jira UE-29618 Change 3243117 on 2016/12/22 by Jeff.Fisher UE-34004 GitHub 2659 : Implement support for OpenVR controller roles. -Rather than assigning unreal hands to controllers in the order the controllers are connected assign unreal hands to match the ones the API is using. -We now defer setting up controllers that are disconnected. This lets connected controllers, that may have hand preference from steam, occupy their desired hands first. If a controller is connected later and does not have a role it is assigned to an unoccupied hand or to the right hand. -This can still end up ignoring role in the following circumstance (and I can get it to do this): get one controller to prefer'right' and the other to have no preference. Power off the 'right' prefering controller. Start the game with only the no-preference controller on. The game will put that controller in the right slot, because the api gives it no other hints. Then power on the controller that preferred 'right'. That controller will now be assigned left, because right is occupied. I don't see a way around that without the ability to switch which hand a controller is associated with at runtime. -This does not yet handle starting with 2 controllers, disconnecting one, then connecting a third controller well. That did not work before either. A new Jira was created for that. #2659 #jira UE-34004 #review-3231154 Change 3243093 on 2016/12/22 by mason.seay Some tweaks to vehicle levels #jira UE-29618 Change 3243084 on 2016/12/22 by andrew.porter QAGame: Cleaned up Sequencer_OverrideBindings #jira UE-29618 Change 3243009 on 2016/12/22 by andrew.porter QAGame: Renaming actor in Sequencer_OverrideBindings. #jira UE-29618 Change 3243003 on 2016/12/22 by andrew.porter QAGame: Removing override bindings from level sequence #jira UE-29618 Change 3242996 on 2016/12/22 by andrew.porter QAGame: Slight tweak to QA-Sequencer. #jira UE-29618 Change 3242982 on 2016/12/22 by Marc.Audy Properly reenable stats sounds in both game and level editor #jira UE-40015 Change 3242959 on 2016/12/22 by mason.seay Test map for vehicles and moving meshes #jira UE-29618 Change 3242934 on 2016/12/22 by andrew.porter QAGame: Adding test content to QA-Sequencer for Override Bindings #jira UE-29618 Change 3242870 on 2016/12/22 by Mason.Seay QAGame footprint reduction: Clearing out content (were in for old bug reports) #jira UE-29618 Change 3242799 on 2016/12/22 by tim.gautier QAGame - Adding the following assets for Sequencer Event Track testing: -TM-Sequencer_EventTrack + BuildData -QA_LightStruct -Sequencer_EventTrack #jira UE-29618 Change 3242792 on 2016/12/22 by samuel.proctor Correcting Container test asset for proper output #jira UE-29618 Change 3242727 on 2016/12/22 by Dmitriy.Dyomin Fixed: LoadLevelIntstance returns a reference that can't be used to send an interface message #jira UE-40005 Change 3242666 on 2016/12/22 by Dmitriy.Dyomin Fixed: Packaging Android app for Mali Graphics Debugger v4.3.0 fails #jira UE-39534 Change 3242373 on 2016/12/21 by Ori.Cohen Allow vehicles to override inertia tensor after any mass properties have changed. #JIRA UE-39566 Change 3242323 on 2016/12/21 by Josh.Adams - Somehow my last change just got completely lost in the edigrate shuffle. Or something. I have no idea! Rdoing it #jira UE-39966 Change 3242286 on 2016/12/21 by mason.seay Vehicle Assets and Maps #jira UE-29618 Change 3242284 on 2016/12/21 by Marc.Audy Fix "stat sounds" not working after PIE completes and a new one is begun #jira UE-32743 #jira UE-39511 Change 3242281 on 2016/12/21 by Ori.Cohen Fix multi select being very slow in phat #JIRA UE-39559 Change 3242229 on 2016/12/21 by Ben.Marsh Fixup workspace for building PhysX. Change 3242227 on 2016/12/21 by Marc.Audy Properly update listener position for stat sounds #jira UE-38850 Change 3242218 on 2016/12/21 by Ori.Cohen Fix physx html5 compilation APEX issue. #JIRA UE-39566 Change 3242174 on 2016/12/21 by Ori.Cohen Fix incorrect moment of inertia for convex elements with translation. #JIRA UE-39566 Change 3242145 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix for vehicle stability #JIRA UE-38710 Change 3242139 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix: Fix crash when setting collision trace in construction script. #JIRA UE-39341 Change 3242088 on 2016/12/21 by Alexis.Matte Fix the drag and drop material on level instance to drop on the correct material slot Fix the serialization of the staticmesh property FMeshSectionInfoMap #jira UE-39952 Change 3242081 on 2016/12/21 by Andrew.Rodham Sequencer: Make details view focused when resetting inner struct contents to ensure that focus path is valid. #jira UE-39851 Change 3242079 on 2016/12/21 by Andrew.Rodham 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 #jira UE-39882 Change 3242078 on 2016/12/21 by Andrew.Rodham Sequencer: Fixed crash when deactivating a section in sequencer #jira UE-39880 Change 3242026 on 2016/12/21 by Josh.Adams - Fixed compile errors in tools after NVNRHI move #jira UE-39966 Change 3241994 on 2016/12/21 by andrew.porter QAGame: Disabled auto play on Sequencer_AnimNotify. #jira UE-29618 Change 3241989 on 2016/12/21 by Mitchell.Wilson Resolving CIS warnings in Content examples. Fixed up redirectors. Moved a texture from developer folder into project and relinked in POM_Debug material. Fixed up BP Commentary Box which was failing to compile. Updated spawn rate on Pulse Ring so it works as intended. #jira UE-39984 Change 3241986 on 2016/12/21 by mason.seay Vehicle Landscape Test map (mainly for crash investigation) #jira UE-29618 Change 3241914 on 2016/12/21 by Josh.Adams - Removed invalid and confusing .ini settings #jira UE-39982 Change 3241902 on 2016/12/21 by Josh.Adams - Moved NVNRHI stuff out of RHI.Build.cs #jira UE-39966 Change 3241889 on 2016/12/21 by andrew.porter QAGame: Added new level sequence to QA-Sequencer level #jira UE-29618 Change 3241884 on 2016/12/21 by Alexis.Matte Make sure the color grading cursor follow the mouse by using the exponent value when painting the cursor. #jira UE-39834 Change 3241869 on 2016/12/21 by andrew.porter QAGame: Adding test content for Sequencer Animation Notifies #jira UE-29618 Change 3241809 on 2016/12/21 by Chris.Wood Fix non-unity build errors in UnrealWatchdog. [UE-39940] - GitHub 3054 : Added EngineBuildSettings.h to UnrealWatchdog.cpp PR #3054: Added EngineBuildSettings.h to UnrealWatchdog.cpp (Contributed by ryanjon2040) #jira UE-39940 Change 3241806 on 2016/12/21 by Marc.Audy Don't unload and then reload streaming levels that are marked to be hidden. #jira UE-39883 Change 3241802 on 2016/12/21 by Marc.Audy Add new object flag RF_NeedInitialization to indicate that ~FObjectInitalizer and PostInitProperties have not been executed for the object Do not allow Modify calls on Objects that have not been initialized #jira UE-39731 Change 3241790 on 2016/12/21 by Marc.Audy Don't rerun construction scripts when an actor has seamless traveled from another level #jira UE-39699 Change 3241789 on 2016/12/21 by Marc.Audy Check Owner has a valid world before trying to access Scene (4.14.2) #jira UE-39560 Change 3241786 on 2016/12/21 by Marc.Audy Fixed crash when seamless travelling in PIE from levels other than the current editor level with a streaming sublevel shared with the current editor level #jira UE-39407 Change 3241781 on 2016/12/21 by Mitchell.Wilson Fixed up redirectors for SkeletalMesh and Personal Walkthroughs. #jira UE-30953 Change 3241747 on 2016/12/21 by mason.seay Tag Query test map and assets #jira UE-29618 Change 3240938 on 2016/12/20 by Ben.Marsh Remaking QFE fixes from 4.14 branch. Change 3240740 on 2016/12/20 by Ben.Marsh Update branch name for analytics. [CL 3272229 by Matthew Griffin in Main branch]
2017-01-25 16:23:41 -05:00
bool UNavCollision::NeedsLoadForTargetPlatform(const class ITargetPlatform* TargetPlatform) const
{
#if WITH_EDITOR
const UDeviceProfile* DeviceProfile = UDeviceProfileManager::Get().FindProfile(TargetPlatform->IniPlatformName());
if (DeviceProfile)
{
int32 CVarNavCollisionAvailableVal = 1;
if (DeviceProfile->GetConsolidatedCVarValue(TEXT("ai.NavCollisionAvailable"), CVarNavCollisionAvailableVal))
{
return CVarNavCollisionAvailableVal != 0;
}
}
#endif // WITH_EDITOR
return true;
}
Copying //UE4/Release-Staging-4.15 to //UE4/Dev-Main (Source: //UE4/Release-4.15 @ 3267632) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3267632 on 2017/01/23 by Jurre.deBaare Marker syncs not working correctly in Blend Spaces #fix Ensure that SampleIndexWithMarkers is serialized #JIRA UE-40975 Change 3266915 on 2017/01/20 by Arciel.Rekman Fix Persona crash on Linux (UE-38790). - Static template variable got instantiated into multiple DSOs; probably exacerbated by --as-needed since this does not happen without it. #jira UE-38790 Change 3266785 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Make usage of CachedUsers thread safe. Duplicates CL 3245390 #jira UE-40649 Change 3266762 on 2017/01/20 by Rolando.Caloca UE4.15 - Fix for reallocating scene color #jira UE-40633 Change 3266642 on 2017/01/20 by Lina.Halper Downgraded Warning to Info #jira: UE-40643 Change 3266532 on 2017/01/20 by Jeff.Campeau Fix multiplatform Windows includes defeating the safety check in MinWindows.h #jira UE-40778 #rn Fixed a compile warning on Xbox One when XboxOneMinApi.h was included before MinWindows.h. Change 3266523 on 2017/01/20 by Marc.Audy Fix case where child actor could avoid getting begin play call #jira UE-40960 Change 3266474 on 2017/01/20 by Peter.Sauerbrei fix for using an API not yet available in iOS 8 #jira UE-40698 Change 3266339 on 2017/01/20 by Frank.Fella Sequencer - Fix UI issues with multi-track section rows. + Don't show an empty sub-track when there are no sections. + Expand parent tracks by default. #Jira UE-40487 Change 3266283 on 2017/01/20 by Jeff.Fisher UE-40683 GearVR projects rendering black -Fix from Remi Palandri #jira UE-40683 #review-3265824 @nick.whiting @ryan.vance Change 3266264 on 2017/01/20 by Lina.Halper Downgraded warning and changed log message #jira: UE-40643 Change 3266239 on 2017/01/20 by Peter.Sauerbrei fix for virtual joystick not showing up on some devices #jira UE-40472 Change 3266084 on 2017/01/20 by Mitchell.Wilson Resaving level to have correct starting camera position. Saved in wrong position after fixing a bug. #jira UE-40887 Change 3266077 on 2017/01/20 by Matt.Kuhlenschmidt Fixed "Wait for Movies to Complete" flag being reversed #jira UE-40943 Change 3266076 on 2017/01/20 by Mitchell.Wilson Updating occulsion bounds method on P_spark_burst_2 so it is not occluded when spawned inside of the coin mesh in BP_Overview example. Updating some post process examples due to changes made with Post Process settings. Film and Scene Color are temporary fixes and are intended to be fully updated in 4.16 #jira UE-40830 UE-40887 Change 3266034 on 2017/01/20 by Benn.Gallagher Fixed crash when reimporting APEX destructibles from apb/x files caused by not allowing the renderer to flush destroy resource commands before emptying an array. #jira UE-40911 Change 3266027 on 2017/01/20 by Ian.Fox #OnlineSubsystemLive - Fix CreateSession and FindSession each permanently failing after first failure. Duplicates CL 3262175 #jira UE-39110 Change 3265906 on 2017/01/20 by Marcus.Wassmer Fix GPU particle AFR flickering and optimize injection transfers. Duplicate CL's 3260302, 3261252, 3265662, 3265678 #jira UE-40915 Change 3265873 on 2017/01/20 by Mark.Satterthwaite Duplicate CL #3262535: Make sure to set rasterizer state when rendering with a material in FSlateRHIRenderingPolicy::DrawElements #jira UE-40842 Change 3265857 on 2017/01/20 by Jamie.Dale Fixed font pathing issue that could happen in an out-of-source packaged build #jira UE-40855 Change 3265675 on 2017/01/20 by Matt.Kuhlenschmidt Move Dirt Mask Intensity to the correct post process category #jira UE-40851 Change 3265674 on 2017/01/20 by Rolando.Caloca UE4.15 - Revert #jira UE-40633 Change 3265647 on 2017/01/20 by Mitchell.Wilson Updating spawn location of the player pawn after unpossessing character in example 1.10. #jira UE-40870 Change 3265612 on 2017/01/20 by Alexis.Matte Prevent name clash warning when doing automation test #jira UE-40788 Change 3265553 on 2017/01/20 by Matthew.Griffin Fixed Shadow variable warning Change 3265366 on 2017/01/20 by Dmitriy.Dyomin Fixed: Vulkan crashes on Adreno Galaxy S7 #jira UE-40840 Change 3265294 on 2017/01/19 by Dmitriy.Dyomin Fixed typo which was causing assert on mobile #jira UE-40633 Change 3265111 on 2017/01/19 by Rolando.Caloca UE4.15 - Fix for scene color crash #jira UE-40633 Change 3264789 on 2017/01/19 by Josh.Adams - Redoing a fix from Dev-Plat for UI_BUILD_SHIPPING_EDITOR #jira UE-40798 Change 3264780 on 2017/01/19 by Rolando.Caloca UE4.15 - Add Morph compute GPU stat #jira UE-40891 Change 3264486 on 2017/01/19 by Mark.Satterthwaite Fix the crash on startup on Intel GPUs - this is due to Intel Metal forcing SM4 to avoid some drivers bugs in SM5 but I got the condition for initialisation in FMinimalDummyForwardLightingResources wrong so it's attempting to create a RWBuffer for SM4 which won't work. #jira UE-40863 Change 3264427 on 2017/01/19 by Rolando.Caloca UE4.15 - Track down crash #jira UE-40633 Change 3264393 on 2017/01/19 by Aaron.McLeran #jira UE-40850 Re-fixing UE-39650 again in 4.15. I hope this bug doesn't regress yet again! Change 3264364 on 2017/01/19 by Daniel.Wright In forward shading SceneCaptureSource modes Normal and BaseColor are replaced with SceneColorHDR as the GBuffer is not available. This is a silent failure for now as there's no good content error reporting mechanism for scene captures. #jira UE-39658 Change 3264284 on 2017/01/19 by Mark.Satterthwaite Duplicate CL #3264251: Modify some asserts in MetalRHI - technically using a store-action of ENoAction on Stencil buffers should make it invalid to restart a render-pass but on Mac it will work because ENoAction won't invalidate anything written. In future we need to use deferred store-actions in Metal so that we can "restart" passes while enforcing correct Load/Store actions. #jira UE-40803 Change 3264282 on 2017/01/19 by Benn.Gallagher CIS fix, bad expression that failed to compile Mac #jira UE-40716 Change 3264257 on 2017/01/19 by Mike.Beach Revising fix in UBlueprint::BeginCacheForCookedPlatformData(), saving off nativization data if the -nativizeAssets param is present (not just if it was enabled in packaging settings). #jira UE-40620 Change 3264242 on 2017/01/19 by Daniel.Wright [Copy] Sharing IndirectLightingCacheTextureSampler samplers #jira UE-40727 Change 3264191 on 2017/01/19 by Ori.Cohen Fix heightfield not working with traces underneath. #JIRA UE-39819 Change 3264139 on 2017/01/19 by Benn.Gallagher Removed collision between clothing in external skeletal mesh components, as clothing simulations could already be in flight and editing collisions while the simulation is running is not supported by APEX #jira UE-40716 Change 3264110 on 2017/01/19 by Max.Preussner MfMedia: Disabled plug-in on Windows 10, because it is currently broken #jira UE-406344 Change 3264108 on 2017/01/19 by Max.Preussner MfMedia: Fixed compile errors on Windows 10 #jira UE-40644 Change 3264099 on 2017/01/19 by Jamie.Dale Adding deprecation warning for 4.14 style PO export #jira UE-40592 Change 3264089 on 2017/01/19 by Matthew.Griffin Reworked DDC commandlet to make sure it actually calls BeginCacheForCookedPlatformData on assets Skip doing this for Engine content if -ProjectOnly is set as that takes a long time and isn't necessary for the way we use it #jira UE-39968 Change 3264065 on 2017/01/19 by James.Golding Fix ModifyCurve node not calling init/update in SourcePose #jira UE-40852 Change 3263729 on 2017/01/19 by Alexis.Matte Fix a bad condition when filling the material sorting array #jira UE-40814 Change 3263704 on 2017/01/19 by Jack.Porter Fix compile error in AndroidESDeferredOpenGL.cpp when " ES Deferred Shading Renderer" is enabled. #jira UE-40659 Change 3263627 on 2017/01/19 by Jack.Porter Fixed black textures when Vulkan is packaged for ETC1 #jira UE-40658 Change 3263554 on 2017/01/19 by Jack.Porter Fixes to HISMC LOD to use new screen size calculation. Solves issue where HISMC was always rendered at lowest LOD. #jira UE-38930 Change 3263535 on 2017/01/19 by Matthew.Griffin Removed unnecessary directories to always cook Problem was actually down to string asset references not being resolved in file set generation Change 3263534 on 2017/01/19 by Matthew.Griffin Added -SkipPublish parameter to BuildLauncherSample command so that we don't chunk and post preflights Change 3263267 on 2017/01/18 by Dan.Oconnor Fix for editing of TMap/TSet variables in structure editor, async tasks, and when using UK2Node_CommutativeAssociativeBinaryOperator. #jira UE-40428 Change 3263219 on 2017/01/18 by Dan.Oconnor Fix copy paste error found by UDN user Craig.Wright that could result in fatal bytecode execution #jira UE-19425 Change 3262980 on 2017/01/18 by Maciej.Mroz #jira UE-40394, UE-40395, UE-40426, UE-40484, UE-40770 Integrated cl 3262851, 3261613, 3260908 from Dev-Blueprint Change 3262908 on 2017/01/18 by Ori.Cohen When refreshing physics assets, don't do so on components that have no bodies. #JIRA UE-40764 Change 3262709 on 2017/01/18 by Matt.Kuhlenschmidt Fix a crash if a background blur widget ends up being negative or zero sized #jira UE-40820 Change 3262606 on 2017/01/18 by Marc.Audy Don't bother the user with force feedback based on where the unpossessed pawn is standing in the world while in simulate mode #jira UE-40785 Change 3262416 on 2017/01/18 by Marc.Audy Reenable audio threading #jira UE-00000 Change 3262125 on 2017/01/18 by Chris.Wood Fixed unnecessary truncate in SMenuAnchor::Tick that caused menu placement to wobble [UE-40293] - Dropdown selection box jitters when mouse is moved over top of it on Mac #jira UE-40293 Change 3262103 on 2017/01/18 by Jamie.Dale Merging some cooker fixes CL# 3262089 - Fixing RedirectCollector issues with projects outside the UE4 directory CL# 3262091 - Guarding against potentially invalid call to FString::Mid CL# 3262094 - Cook on the fly builds now resolve string asset references #jira UE-40790 Change 3262082 on 2017/01/18 by Chris.Bunner Accumulate used particle materials from final mesh material module, not first. #jira UE-39953 Change 3261996 on 2017/01/18 by Matthew.Griffin Allow Samples to be built in pre-flights if you are specifying an engine version Change 3261995 on 2017/01/18 by Matthew.Griffin Resolve string asset references after loading packages to ensure that we find all required files Change 3261934 on 2017/01/18 by Allan.Bentham Bump shader version to force changes in 3260307 to occur. #jira UE-39701 Change 3261842 on 2017/01/18 by Graeme.Thornton Manual copy of CL 3253580 from Dev-Core Added some validation of the class index in exportmap entries #jira UE-37873 Change 3261017 on 2017/01/17 by Mitchell.Wilson Resaving all levels to resolve short form string asset reference warnings. #jira UE-40732 Change 3260918 on 2017/01/17 by Andrew.Rodham Sequencer: Request unloaded levels to be loaded when being made visible through sequencer #jira UE-40082 Change 3260909 on 2017/01/17 by Ben.Marsh Fix error running "Clean" in installed build. #jira UE-40751 Change 3260757 on 2017/01/17 by Jeff.Fisher UE-39654 Crash when launching Google VR project -Via SwitchGameWindowToUseGameViewport we get an early ResizeViewport which does an early Draw. This calls GetStereoProjectionMatrix before the game has ticked and fetched the device info we use to build that matrix. -In this change we make the call to setup that information in the GoogleVRHMD constructor, to ensure it is done before anything tries to use it. -I also added some asserts. #jira UE-39654 #review-3260644 Change 3260637 on 2017/01/17 by Alexis.Matte Fix crash when importing skeletal mesh containing a texture or a material using the same name. #jira UE-40538 Change 3260630 on 2017/01/17 by Marc.Audy When installing a feature pack maintain the include of the template so that any properties inside it are not lost by replacing it with the project's PCH include Update all C++ feature packs to include the original project .h in the files that are copied in to the new project #jira UE-40730 Change 3260600 on 2017/01/17 by matt.barnes Test content for sequencer event tracks #jira UE-29618 Change 3260593 on 2017/01/17 by Mieszko.Zielinski Made FSupportedAreaData export as part of engine API #UE4 #jira UE-40739 Change 3260538 on 2017/01/17 by Marc.Audy Always display axes in debug info, but show -- for value when we don't yet know the ranges #jira UE-40700 Change 3260422 on 2017/01/17 by Marc.Audy Expose level streaming incremental unregister component cvars in the engine streaming section of the project settings #jira UE-10109 Change 3260392 on 2017/01/17 by Ben.Woodhouse Duplicated from CL 3260107: Fix FMonitoredProcess to prevent infinite loop in -nothreading mode #jira UE-40717 Change 3260358 on 2017/01/17 by Chris.Bunner Only validate tonemapper LUT input if actually hooked up. #jira UE-40467 Change 3260327 on 2017/01/17 by Frank.Fella PlatformMediaSource - Fix Validate to check all specified media sources, and change GetURL to get the url for the current platform when running uncooked. #jira UE-40709 Change 3260307 on 2017/01/17 by Allan.Bentham Restore metal compiler's shader source serialization code when the shader is to be compiled at runtime. #jira UE-39701 Change 3260276 on 2017/01/17 by Alex.Delesky #jira UE-40276 - Fixing an issue where a Standalone game launched from the editor cannot toggle fullscreen mode. Change 3260274 on 2017/01/17 by Chris.Wood Added check for null World ptr in AActor::PostEditChangeProperty to fix crash when pasting temporary Actors [UE-40492] - Crash after ejecting from PIE session and selecting a component in the details panel #jira UE-40492 Change 3260230 on 2017/01/17 by Ben.Woodhouse Duplicated from dev-rendering@3232283 D3D12 - downgrade root signature size warning to a log following a discussion with Microsoft. There's not much we can actually do about it, and it's not relevant to all hardware #jira UE-36999 Change 3260096 on 2017/01/17 by Thomas.Sarkanen Fixed crash when rendering out a level sequence with layered animations When a level contained sequences with layered animations that *werent* taking part in the render (i.e. they were not part of the current master sequence) then their instances were initialized but not ticked. When their components then got a call to evaluate their bone transforms, the cached blends were in an uninitialized state. #jira UE-40654 - Render Movie using separate process crashes capture process Change 3259875 on 2017/01/17 by Dmitriy.Dyomin Fixed: SunTemple is washed out in one color on some Android devices #jira UE-40689 Change 3259011 on 2017/01/16 by Max.Chen Matinee to Level Sequence: Make RegisterTrackConverters pure virtual #jira UE-37328 Change 3258992 on 2017/01/16 by Rolando.Caloca UE4.15 - Integrate fix for outlines (3258807) #jira UE-40690 Change 3258949 on 2017/01/16 by mason.seay Disabled TranslatedMass test #jira UE-29618 Change 3258860 on 2017/01/16 by Max.Preussner Media: Prevent loading of media plug-ins in console apps, such as game servers (OR-34819) #jira OR-34819 Change 3258846 on 2017/01/16 by Max.Preussner MfMedia: Fixed incorrect tracks being played in multi-track media sources (UE-39703) #jira UE-39703 Change 3258813 on 2017/01/16 by Benn.Gallagher Added error on import for APEX clothing files that either have no submeshes or have no submeshes with simulated vertices. #jira UE-40614 Change 3258771 on 2017/01/16 by James.Golding Skip fatal warning in UBodySetup::Serialize if duplicating (e.g. spawning component via SCS with a BodySetup in its template) #jira UE-40418 Change 3258747 on 2017/01/16 by Max.Chen Sequencer: AddUnique SequencerActorTag to prevent multiple tags being added when spawning/despawning. #jira UE-40665 Change 3258630 on 2017/01/16 by Jurre.deBaare CIS IfDef issue fix #JIRA UE-1234 Change 3258541 on 2017/01/16 by Phillip.Kavan [UE-40131] Revised fix that will work for "inclusive" BP nativization with data-only BPs. change summary: - revised code in UBlueprint::BeginCacheForCookedPlatformData() to also support the "inclusive" nativization method #jira UE-40131 Change 3258532 on 2017/01/16 by Max.Chen Sequencer: Fix max row index off by one error . This was always incorrect, but it was masked by the fact that FixRowIndices() was called on the track when the UI gets built. That function was removed from the node layer in CL #3252753 and therefore exposed this bug. #jira UE-40642 Change 3258505 on 2017/01/16 by Marc.Audy Improve messaging when installing vehicle and vehicle adv C++ feature packs #jira UE-40647 Change 3258478 on 2017/01/16 by Matt.Kuhlenschmidt PR #3131: UE-40567: Added nullcheck to FSplinePointDetails (Contributed by projectgheist) #jira UE-40567 Change 3258457 on 2017/01/16 by Jurre.deBaare SpeedTree Billboards rendering with Incorrect Material #fix Ensure that we add a section info entry for the billboard models/lods during SpeedTree importing #jira UE-39677 Change 3258442 on 2017/01/16 by Alexis.Matte Skeletalmesh import, make sure we increment the lod index when animation is not imported #jira UE-40640 Change 3258431 on 2017/01/16 by Jurre.deBaare Back out changelist 3258392 #fix issue was already resolved #jira UE-1234 Change 3258392 on 2017/01/16 by Jurre.deBaare Fix for non-unity CIS #JIRA UE-1234 Change 3258358 on 2017/01/16 by Matthew.Griffin Prevent warning from being shown when XMPP module is not built #jira UE-40616 (I guess LoadModule could be changed to LoadModuleChecked now if they do exist) Change 3258144 on 2017/01/15 by Marc.Audy Fix non-unity CIS errors #jira UE-00000 Change 3258141 on 2017/01/15 by zachary.wilson Adding testing content for Distance Field Indirect Shadows #jira UE-29618 Change 3258049 on 2017/01/14 by Nick.Shin UFE sent incorrect header data on missing file also, it seems that UFE was written to expect clients to close the connection -- (this should be closed manually -- which will flush the data and then close out the socket -- but, since this is a developer tool... leaving this as-is) first, 404 was not sending the required double newline after headers second, since connection are not closed manually (server side) send a dummy payload with content-length data #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3257984 on 2017/01/14 by Aaron.McLeran Attempting another fix for static analysis warning in CIS #jira UE-40645 Change 3257904 on 2017/01/14 by Aaron.McLeran Resolving static analysis warnings reported by CIS #jira UE-40645 Change 3257883 on 2017/01/14 by Aaron.McLeran Fixing build warning with CL 3257826 #jira UE-40645 Change 3257826 on 2017/01/13 by Aaron.McLeran Integrating fixes from Dev-Framework and Odin to Release-415 #jira UE-40645 Change 3257654 on 2017/01/13 by Marc.Audy Until plugins can drive their own dependencies vehicle and vehicle adv feature packs will not compile automatically and will pop up a message log informing the user of the actions they need to manually take. #jira UE-40466 Change 3257608 on 2017/01/13 by John.Pollard PC: Assertion Fail with UPackageMapClient::AddNetFieldExportGroup() viewing replays #jira OR-34522 Change 3257489 on 2017/01/13 by Mitchell.Wilson Removing preview mesh from multiple materials to resolve CIS warnings. #jira UE-40628 Change 3257485 on 2017/01/13 by Chris.Babcock Don't initialize FMinimalDummyForwardLightingResources for unneeded feature levels (below SM4) #jira UE-40602 #ue4 #android Change 3257444 on 2017/01/13 by Matt.Barnes Updating test assets for UEQATC-2967 #jira UE-29618 Change 3257324 on 2017/01/13 by Arciel.Rekman Linux: Update runtime CEF lib as well (UE-401413). - Followup to CL 3256081. #jira UE-40413 (Merging CL 3257241 from Dev-Platform to Release-4.15) Change 3257140 on 2017/01/13 by Lina.Halper Fix crash with deleting all poses #jira: UE-40537 Change 3257066 on 2017/01/13 by Jurre.deBaare CIS fix for game builds #jira UE-1234 Change 3257056 on 2017/01/13 by Ben.Zeigler #jira UE-40318 Fix crash in streamablemanager where callbacks would get called on a deleted manager. This is being rewritten in 4.16, so do a quick fix for 4.15 to avoid the crash Change 3256839 on 2017/01/13 by Jurre.deBaare Added conversion of HLOD transition screen size to new transition screen area values #fix During serialization patch up the values of transition screen size within the hierarchical lod setups #misc Updated the default value to a screen size to screen area equivalent #JIRA UE-40518 Change 3256761 on 2017/01/13 by Mieszko.Zielinski Fixed EQS debug rendering not clearing previously displayed labels if new request has no labels #UE4 #jira UE-40589 Change 3256177 on 2017/01/12 by Josh.Adams - Moved the MfMedia plugin outside of XboxOne directory, because it's a Windows plugin as well (that happens to also work on XboxOne - all public APIs) #jira UE-40391 Change 3256131 on 2017/01/12 by Jamie.Dale Fixing log spam when trying to load an empty font data #jira UE-40555 Change 3256081 on 2017/01/12 by Arciel.Rekman Fixed CEF compatibility problems on Ubuntu 14.04 (UE-40413). - Also deleted Debug version of it. - Change by yaakuro. #jira UE-40413 (Edigrating CL 3256065 from Dev-Platform to Release-4.15) Change 3256046 on 2017/01/12 by Jon.Nabozny Use PxConvexFlag::eSHIFT_VERTICES when cooking meshes to fix baked in transforms. #jira UE-39212 Change 3255939 on 2017/01/12 by mason.seay Rebuilt lighting #jira UE-29618 Change 3255912 on 2017/01/12 by Olaf.Piesche Replicating fix from 3246828 for #jira UE-39249 Change 3255909 on 2017/01/12 by Rolando.Caloca UE4.15 - Support for choosing discrete AMD GPU #jira UE-40546 Change 3255835 on 2017/01/12 by Martin.Wilson Fix newly added virtual bones not being on screen. #jira UE-40516 Change 3255774 on 2017/01/12 by Mark.Satterthwaite Merging 3251926 for Richard.Wallis: #jira UE-38828 Crash after Enabling Forward Shading on Mac and Creating/Editing Materials. Using TGlobalResource to avoid constant resource allocation. Prev fix (in CL 3239454) caused a crash in D3D11 with zero sized resource views. Change 3255771 on 2017/01/12 by Alexis.Matte Fix a crash when re-importing asset with no material #jira UE-40510 Change 3255746 on 2017/01/12 by Jon.Nabozny Change _DEBUG to PX_DEBUG in ConvexHullLib.cpp #jira UE-0000 Change 3255659 on 2017/01/12 by Jon.Nabozny Enable Shifting Vertices during Convex Hull cooking to prevent precision issues. (Copied CL-3249100 from Dev-Phyics-Upgrade to support new flag) #jira UE-39212 Change 3255617 on 2017/01/12 by Ori.Cohen Fix crash when computing mass for an async object. Using passed in rigid body instead of assuming SyncRigidActor #JIRA UE-40458 Change 3255536 on 2017/01/12 by Jamie.Dale Fixed crash when using an object picker against the 'Object' type This also optimizes some filter code to avoid filtering when it would be pointless (and just slows things down). #jira UE-40408 Change 3255451 on 2017/01/12 by Chris.Wood Fixed read only text color in SCommentBubble [UE-40384] - Reference Viewer comment text is difficult to read Also changed DetermineForegroundColor() method in EditableTextBox classes to fallback on ForegroundColorOverride if it is set and ReadOnlyForegroundColorOverride isn't set. #jira UE-40384 Change 3255448 on 2017/01/12 by Chris.Wood Removed blinking cursor/caret on read only editable text layouts. [UE-40502] - Flashing cursor/caret showing in read-only editable text layouts #jira UE-40502 Change 3255445 on 2017/01/12 by Marc.Audy Create the dynamic level streaming persistent object correctly outered to the World rather than the transient package to avoid GetWorld() crashing #jira UE-00000 Change 3255441 on 2017/01/12 by Jon.Nabozny Regenerate collision for the basic Cube mesh to fix resting issues and invalid verts. #jira UE-40478 Change 3255407 on 2017/01/12 by Yannick.Lange VREditor: - Fix: Assertion Failed crash after pressing F8 in PIE while Foliage Mode was selected - Fix: Assertion Failed crash after pressing F8 in PIE while Paint Mode was selected - Added extra checks for other possible future cases #jira UE-39786 UE-39789 Change 3255393 on 2017/01/12 by Chris.Bunner Duplicating CL 3255244: Removed test variable from MaterialExpressionVectorParameter. #jira UE-40517 Change 3255375 on 2017/01/12 by Steve.Robb CIS fix. #jira UE-39556 Change 3255334 on 2017/01/12 by samuel.proctor Corrected QA Container asset to remove pin warning. #jira UE-29618 Change 3255319 on 2017/01/12 by james.cobbett Fixing motion blur issue with test content for Pose Snapshots. #jira UE-29618 Change 3255247 on 2017/01/12 by Nick.Darnell Slate - Slate's Tab Manager is now a bit smarter about allowing Focus/BringToFront attention grabbing methods. In order to make the UI less jumpy it was restricted to only allowing alerts and bring to front to be triggered if you were on the window, or child window of the active application window. That can negatively impact cases where a user takes an action (clicks a link ro button saying open/goto this tab), that is on another window. To work around this limitation, the Tab Manager will also permit the action if Slate is currently processing user input, implying that the action being taken is in direct response to the user pressing a button and interacting with the UI. #jira UE-40313 Change 3255236 on 2017/01/12 by Phillip.Kavan [UE-40131] Non-native child BPs can now properly override a nativized parent BP's components in a cooked build with exclusive Blueprint class nativiation. - Mirrored from //UE4/Dev-Blueprints (CL# 3254024,3254391) #jira UE-40131 Change 3255216 on 2017/01/12 by Rolando.Caloca UE4.15 - Fix compile issue on Vulkan 1.0.37.0 or newer #jira UE-40506 Change 3255206 on 2017/01/12 by Steve.Robb Use outer walking IsA() implementation in editor to get around reinstancing and hot reload issues. #fyi mike.beach #jira UE-39556 Change 3255195 on 2017/01/12 by mason.seay Adjusted slope to fix platform discrepancy #jira UE-29618 Change 3255086 on 2017/01/12 by Jack.Porter Fix XboxOneShaderCompiler.cpp non-unity compilation #jira None Change 3255085 on 2017/01/12 by Jack.Porter Missing HTML5 changes from CL 3254907 #jira UE-39111 Change 3255031 on 2017/01/12 by Jack.Porter More iOS GoogleVR changes missing from CL 3254907 #jira UE-39111 Change 3254991 on 2017/01/12 by Jack.Porter Missing file from CL 3254907 #jira UE-39111 Change 3254907 on 2017/01/11 by Jack.Porter Android MSAA changes - use r.MobileMSAA cvar, support more than 2x, fix issues where targets other than scene color were created with MSAA #jira UE-39111 #jira UE-35849 #jira UEMOB-35 Change 3254810 on 2017/01/11 by Arciel.Rekman Linux: fix for crash on exit (UE-40488). #jira UE-40488 Change 3254617 on 2017/01/11 by Peter.Sauerbrei remake the fix for missing PhysXVehicle library in binary for IOS and TVOS #jira UE-39349 Change 3254489 on 2017/01/11 by mason.seay Other minor improvements to the map #jira UE-29618 Change 3254477 on 2017/01/11 by mason.seay Map tweaks to prevent the vehicle from getting stuck #jira UE-29618 Change 3254431 on 2017/01/11 by Mitchell.Wilson Rebuilt lighting on all StarterContent levels. #jira UE-40468 Change 3254333 on 2017/01/11 by mason.seay Adjusted lightmap on mesh to remove odd rendering splotches #jira UE-29618 Change 3254131 on 2017/01/11 by Rolando.Caloca UE4.15 - Missing dumped shaders #jira UE-40465 Change 3254126 on 2017/01/11 by Jeff.Fisher UE-40422 Vive Motion Controllers unable to Play Haptic Effect -Removed an unnecessary remapping of controllerindex to deviceid, they are the same now. #jira UE-40422 #review-3254084 Change 3254046 on 2017/01/11 by Mark.Satterthwaite Merging 3233811: Fix compiling QA-Material tessellation shaders that don't need to emit from Hull or sample in Domain the HSOut buffer which was confusing MetalBackend. #jira UE-39935 Change 3254021 on 2017/01/11 by james.cobbett Test content for Pose Snapshot testing #jira UE-29618 Change 3253993 on 2017/01/11 by Alexis.Matte Fix the morph target import #jira UE-40424 Change 3253948 on 2017/01/11 by mason.seay Fixed Level BP logic that was causing Access None error #jira UE-29618 Change 3253884 on 2017/01/11 by mason.seay Updated mesh colors on map. Disabled motion blur #jira UE-29618 Change 3253862 on 2017/01/11 by mason.seay Disabled Always Show Mobile Input (turned on by accident) #jira UE-29618 Change 3253859 on 2017/01/11 by Mark.Satterthwaite Merging 3252866: Fix Metal shader pipeline hash collisions caused by deferring MTLFunction construction until PrepareToDraw so that we may use Function-Constants to specialise the shader source without generating additional permutations. This is required to generate proper tessellation shaders which are specialised against the index-buffer usage & type (none, uint16, uint32). While we're here amend the hash functions to make better use of the existing hash functions to improve the distribution and hopefully reduce the possibility of collisions in future. #jira UE-40357 Change 3253854 on 2017/01/11 by Mark.Satterthwaite Merging 3252859: Fix the calculation of Metal tessellation struct alignment and size to use largest member size, so that we don't assert in debug or cause out-of-bounds access in development/shipping. #jira UE-40410 Change 3253853 on 2017/01/11 by Mark.Satterthwaite Merging 3237394: Add Metal-specific permutations of TBasePassHS - they affect the C++ definition on all platforms but are only cached or used on Metal - because the way we compile the combined VS+HS tessellation stage requires that the combined VS + HS HLSL code references the same resources, otherwise we get incorrect resouce bindings and subsequently fail to render properly. Long-term the Metal tessellation code will need to be refactored so that the vertex shader stage is emitted as a separate shader from the hull shader stage as this but will keep cropping back up and continue to complicate the engine. #jira UE-39799 Change 3253852 on 2017/01/11 by Mark.Satterthwaite Merging 3236850: Make changing the Metal Shader Version project setting prompt the user to restart for the changes to take effect. #jira UE-39801 Change 3253834 on 2017/01/11 by mason.seay Updated mobile input textures to be power of two #jira UE-29618 Change 3253807 on 2017/01/11 by Mark.Satterthwaite Merging 3232641 & 3236788 & 3233854 & 3249742 from Dev-Rendering: 3232641: - Eliminate redundant state changes in MetalRHI in the state cache. - Add a new debug level for setting buffers to nil prior to calls to set*Bytes so that the tool doesn't display incorrect data. - Make testing for validation & statistics features use the same EMetalFeatures API as everything else for consistency. - Cache the fallback depth-stencil texture in the state cache and ignore it for determining whether a pass can restart - if we are using this texture its contents are worthless anyway. 3236788: Fix 10.11.6 support (aka -nometalv2): the stencil view workaround necessitates a mid-render blit and the way things were setup resulted in the HasValidRenderTargets assert firing. Refactored the code to separate the concept or valid render-states in the cache from active render-states in the render-pass. Now it works as intended and will be needed for 4.15. 3233854: More information about texture type validation errors in Metal. 3249742: Fix missing GPU particles on Mac. Pointers getting reused is causing the blendstate equality operator to fail. Simple workaround until we have time for a proper fix. #jira UE-40200 Change 3253636 on 2017/01/11 by Chris.Wood Improved tracking of runtime and debugger attachment for analytics purposes. [UE-39780] - Change IsDebugger to WasDebuggerPresent in all crash/AS analytics [UE-39777] - Update MTBF IsDebugger state for every heartbeat [UE-39778] - UnrealWatchdog to send WasDebuggerPresent state for app if set [UE-39779] - UnrealWatchdog to send total run time of process Debugger state was previously read once at startup or once at the time of an event. Debugger is now checked during the heartbeat and doesn't reset flag when detached so we know if a session was ever debugged. Also reporting total run time in UnrealWatchdog. Watchdog still doesn't run when debugging but and will never show popups to a debugger user even when forced on with -forcewatchdog. #jira UE-39780, UE-39777, UE-39778, UE-39779 Change 3253281 on 2017/01/10 by Dan.Oconnor Typo fix caused parameter in local struct definition to shadow the local #jira UE-40027 Change 3253231 on 2017/01/10 by Dan.Oconnor Mirror of 3253220 These pins should infer together #jira UE-40427 Change 3253125 on 2017/01/10 by Uriel.Doyon Brought back CL 3242117 and 3238685, which got lost on the way: - Fix for possiblel check fail when changin mobility of actors. - Fix for possible check fail when processing streaming data. #jira UE-39996 Change 3252936 on 2017/01/10 by Marc.Audy CopyPropertiesForUnrelatedObjects needs to consider path not just name of subobjects when matching them up to copy properties and update references Ensure that a reinstanced child actor component ends up pointing at the correct child actor template #jira UE-40027 Change 3252886 on 2017/01/10 by Lina.Halper Fix for invalid AnimCurves when curve is added while running #jira: UE-39826 Change 3252753 on 2017/01/10 by Frank.Fella Sequencer - Change track rows to use separate track nodes in the display node tree, fixes key edit issues on animation and audio tracks. #jira UE-39836 Change 3252640 on 2017/01/10 by Lukasz.Furman fixed NavCollision losing user settings after any property change copy of 3252628 #jira UE-40388 Change 3252614 on 2017/01/10 by Daniel.Wright UStaticMeshComponent::InvalidateLightingCacheDetailed uses MarkRenderStateDirty. Massively speeds up duplication of HISMC with many instances (10+ minutes -> seconds), as InvalidateLightingCacheDetailed gets called for every instance. #jira UE-40406 Change 3252609 on 2017/01/10 by mason.seay Updated map with text actors for more visual clarity #jira UE-29618 Change 3252477 on 2017/01/10 by Daniel.Wright [Copy] Fixed race condition with FPrecomputedLightVolume::Data which was exposed when switching lighting scenarios #jira UE-39852 Change 3252451 on 2017/01/10 by Daniel.Wright Garbage collection calls UWorld>SendAllEndOfFrameUpdates() on all loaded worlds first so that deferred recreate render states happen before any UObjects are deleted * Fixes rendering thread crashes in the order of events of 1) SetMaterial 2) GC 3) Rendering command that dereferences the UMaterial #jira UE-30089 Change 3252418 on 2017/01/10 by Ben.Zeigler #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. Change 3252410 on 2017/01/10 by Max.Chen Sequencer : Filter sections on select in range Copy from Dev-Sequencer #jira UE-37854 Change 3252385 on 2017/01/10 by Max.Chen Sequencer: Update auto tangents when setting key time. This fixes a bug where dragging keys with auto tangents doesn't recompute tangents properly. #jira UE-39923 Change 3252360 on 2017/01/10 by Allan.Bentham Remove incorrect assert for iOS. #jira UE-40385 Change 3252297 on 2017/01/10 by mason.seay Test assets for suspending cloth simulation #jira UE-29618 Change 3252125 on 2017/01/10 by Mieszko.Zielinski Fallout fix after removal of BlackboardKeyUtils::CalculateComparisonResult declaration from the AIModule #UE4 #jira UE-40099 Change 3251987 on 2017/01/10 by Allan.Bentham Fix HQ DoF #jira UE-35548 Change 3251856 on 2017/01/10 by Jack.Porter Fixed Get Instances Overlapping Box blueprint function due to issue with FBox constructor. Added MakeBox and MakeBox2D kismet native functions Fixed box overlap test ignoring instance scale #jira UE-34409 Change 3251519 on 2017/01/09 by Daniel.Wright [Copy] Fixed GLandscapeLayerUsageMaterial getting GC'ed #jira UE-40055 Change 3251146 on 2017/01/09 by Lina.Halper Fix on stable track data carrying over to pose asset - decided to clean up track data in anim sequence since we don't really need that data anymore #jira: UE-40351 #code review: Martin.Wilson Change 3251056 on 2017/01/09 by Lina.Halper fixed crash when pose node contains stale data when updating source. #jira: UE-40258 #code review; Thomas.Sarkanen Change 3251035 on 2017/01/09 by Mitchell.Wilson Removed preview mesh in M_GodRay to resolve CIS warning. Relinked textures used in two materials to resolve CIS warnings. #jira UE-40350 Change 3250959 on 2017/01/09 by Mitchell.Wilson Updating master sequence playback end time so the final audio track can be heard. Updating multiple shots to resolve issues with audio not playing back properly. #jira UE-40321 UE-40335 Change 3250896 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed level visibility not working in PIE #jira UE-40082 Change 3250895 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed evaluation of overlapping audio and skeletal aninmation sections - Audio and skeletal animation sections now continue to support legacy evaluation order. Overlapping sections of the same priority on the same row will be filtered out such that only the section with the latest start time will be evaluated. #jira UE-40320 Change 3250830 on 2017/01/09 by Ben.Woodhouse Duplicated from //ue4/Release-4.14 CL 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 UE-38818 Change 3250790 on 2017/01/09 by Lauren.Ridge Fixing backspace on VR Editor numberpad menu. #jira UE-39770 Change 3250681 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@3249296: XB1/Fast semantics: Add missing L1/L2 cache flush on transition to readable (or RW). The missing cache flush was causing indeterminism when reading from a texture shortly after writing to it as a render target. This fixes bloom and diffuse irradiance issues The bug has been there for a while, but CL 3227787 (drawclear early out) caused it to manifest #jira UE-39727 #jira UE-40238 Change 3250680 on 2017/01/09 by Ben.Woodhouse Duplicated from dev-rendering@3238664 Fix dbuffer decal rendering issues in fullscreen on PC. Also fixes crash in editor when viewing dbuffer materials. Pass clearcolor in RT params for system textures to workaround a bug with ClearColorTexture not working in fullscreen mode on DX11. Make sure dbuffer targets are bound if we're rendering mesh decals #jira UT-6891 #jira UE-39842 #jira UE-39949 Change 3250609 on 2017/01/09 by Steve.Robb Maximum number of stats-using threads increased to 512. #jira UE-38153 Change 3250604 on 2017/01/09 by Andrew.Rodham Sequencer: Fixed incorrect seed being used when generating new animation type IDs for object properties #jira UE-40327 Change 3250589 on 2017/01/09 by Matthew.Griffin Changed publish symbols node to use runtime dependencies instead of manually including the whole PhysX folder Avoids unused configs and VS2013 files #jira UE-39171 Change 3250578 on 2017/01/09 by Matthew.Griffin Removed art tools from released build now that they are available separately on the Marketplace Change 3250282 on 2017/01/07 by Mieszko.Zielinski Fixed UNavigationSystem::bNavigationAutoUpdateEnabled getting ignored by recent addition to related condition in UNavigationSystem #UE4 Reported by UT team. Replication of a fix from Dev-Framework that didn't make it to 4.15 stream #jira UE-40324 Change 3250276 on 2017/01/07 by Mieszko.Zielinski Fixed not being able to add elements to UAIPerceptionStimuliSourceComponent.RegisterAsSourceForSenses for instances manually placed on the map #UE4 #jira UE-31711 Change 3250219 on 2017/01/07 by Mieszko.Zielinski Extended comment to AISenseConfig_Sight::PeripheralVisionAngleDegrees to make it clear how it works #UE4 #jira UE-31731 Change 3250147 on 2017/01/07 by Andrew.Rodham Added missing includes #jira UE-40019 Change 3250096 on 2017/01/06 by Nick.Shin refetch on timed out GET/POST requests correction to: UE_MakeHTTPDataRequest #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3249963 on 2017/01/06 by Mieszko.Zielinski removed unused and undefined BlackboardKeyUtils::CalculateComparisonResult #UE4 #jira UE-40099 Change 3249829 on 2017/01/06 by Alexis.Matte turn on the material name clash feature for the content browser importer. #jira UE-40298 Change 3249791 on 2017/01/06 by andrew.porter QAGame: Added level blueprint logic to QA-Sequencer that lets tester override sequence bindings #jira UE-29618 Change 3249755 on 2017/01/06 by Jamie.Dale Some fixes for object reference detection and notification when deleting assets #jira UE-40121 Change 3249727 on 2017/01/06 by James.Golding #jira UE-40242 Change 3249707 on 2017/01/06 by Mitchell.Wilson Removing preview mesh with incorrect path from materials to resolve warnings in CIS. #jira UE-40311 Change 3249543 on 2017/01/06 by Michael.Dupuis #jira UE-40299: validate if UISettings is valid Change 3249506 on 2017/01/06 by Alexis.Matte Make sure we use the correct LodIndex when importing a new LOD in case a previous LOD import fail. #jira UE-40240 Change 3249477 on 2017/01/06 by Ori.Cohen Fix incorrect warning when moving kinematic objects during simulation. #JIRA UE-40290 Change 3249472 on 2017/01/06 by Andrew.Rodham Sequencer: Undo now works as expected when editing the properties of a key #jira UE-40019 Change 3249390 on 2017/01/06 by Mitchell.Wilson Removing preview meshes with improper path from materials to resolve CIS warnings in landscape mountains sample. #jira UE-40300 Change 3249317 on 2017/01/06 by Alexis.Matte Fix a crash when loading skeletalmesh with no section #jira UE-40249 Change 3249294 on 2017/01/06 by Mitchell.Wilson Updated defaultengine.ini for Match 3 to resolve warnings in CIS. ServerDefaultMap and TransitionMap had invalid paths. #jira UE-40295 Change 3249213 on 2017/01/06 by Chris.Bunner 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. #jira OR-33525, OR-33536, OR-33540, OR-33520 Change 3249135 on 2017/01/06 by Martin.Wilson Fix root motion issues on additive animations. - Fix scale issue on resetting root bone - Fix loss of root motion when animation is additive. #jira UE-40232 Change 3248522 on 2017/01/05 by Alexis.Matte Fix a crash when reimporting morph target. Also fix a crash when initiating ColorVertexBuffer with NULL value #jira UE-40201 Change 3248271 on 2017/01/05 by Andrew.Rodham Sequencer: Only reset persistent evaluation data when the sequence has changed - This ensures that we don't destroy persistent data that is assumed to still exist (i.e. it was created in ::Setup) from the same sequence #jira UE-40234 Change 3248092 on 2017/01/05 by Ben.Marsh UBT: Remove the [Obsolete] attribute from methods in TargetRules; the [ObsoleteOverride] attribute gives a much better (and more concise) warning with specific instructions on how to resolve it. Change 3248091 on 2017/01/05 by Marcus.Wassmer Tick renderthreadtickables in -onethread to avoid leaks. #jira UE-40248 Change 3248063 on 2017/01/05 by Marc.Audy Route FAudioDevice::StopAllSounds to the audio thread if called on the game thread #jira UE-40243 Change 3247995 on 2017/01/05 by Maciej.Mroz NativizationSummary object is always present. manually merged cl#3247985 from Dev-Blueprints #jira UE-40035 Change 3247873 on 2017/01/05 by Chad.Garyet Adding "Generate QA Labels" buildgraph node and automation script. Port of createNewLabel and createMinimumLabel python scripts into UAT #jira UEB-725 Change 3247855 on 2017/01/05 by Nick.Shin refetch on timed out GET/POST requests #jira UE-39992 Quicklaunch UFE HTML5 fails with "NS_ERROR_Failure" Change 3247737 on 2017/01/05 by Marc.Audy static mesh component instance data now correclty inherits from pritive component instance data instead of skipping it and inheriting directly from scene component instance data #jira UE-40053 Change 3247723 on 2017/01/05 by mason.seay Asset for suspend cloth bug #jira UE-29618 Change 3247708 on 2017/01/05 by Mitchell.Wilson Updating project settings to disable dbuffer decals to resolve rendering issues in Showdown while using -game -vr #jira UE-40195 Change 3247652 on 2017/01/05 by Martin.Wilson Fixes for animation notifies window -Fix notify not being removed from skeleton -Fix crash where editor is not refreshed after notify removal #jira UE-40154 Change 3247638 on 2017/01/05 by mason.seay Test assets for cloth suspension #jira UE-29618 Change 3247630 on 2017/01/05 by Alexis.Matte Prevent crash when the import fail and we have no staticmesh created #jira UE-40024 Change 3247556 on 2017/01/05 by Ben.Marsh Fix non-unity compile error. Change 3247547 on 2017/01/05 by Jurre.deBaare Crash while using the Delete Button in the HLOD Outliner while a Generated Proxy Mesh is opened in the Static Mesh Editor #fix Unify path for both delete cluster options in the outliner UI #jira UE-40066 Change 3247539 on 2017/01/05 by Benn.Gallagher Fixed serialization crash for simplified skeletal meshes leading to corrupted assets that crash on load after skin weight buffer changes. #jira UE-40199 Change 3247515 on 2017/01/05 by Allan.Bentham Fix inverted planar reflections when mobileLDR Fixed incorrect gamma 2 planar reflection rendering when mobileLDR #jira UE-32868 Change 3247502 on 2017/01/05 by Dmitriy.Dyomin Fixed: Single digit frame rate when sculpting landscape foliage. #jira UE-39532 Change 3247232 on 2017/01/04 by Ben.Marsh Remove private include from public header. Prevents compiling samples from installed build of the engine without private headers. #jira UE-40135, UE-40137, UE-40139, UE-40140, UE-40141, UE-40142, UE-40143, UE-40144 Change 3247002 on 2017/01/04 by Chris.Babcock Changed Vulkan hitchy pipeline log message verbosity #jira UE-38354 #ue4 #android #dontbackcopy Change 3246927 on 2017/01/04 by matt.barnes Updating QAGame content to facilitate UEQATC-2969 #jira UE-29618 Change 3246894 on 2017/01/04 by Mike.Beach Mirroring CL 3245322 from Dev-BP Fixed a crash when implementing a native interface in a BP #jira UE-40155, UE-40203 Change 3246830 on 2017/01/04 by Chris.Bunner Allow AllocGBuffer call when in simple-forward so dummy uniform buffer creation can occur. #jira UE-39756 Change 3246816 on 2017/01/04 by Jon.Nabozny Fix Anim Notifies Tab not opening in Animation Editor. #JIRA UE-40134 Change 3246804 on 2017/01/04 by Ori.Cohen Touch engine file to trigger re-link. #JIRA UE-40156 Change 3246709 on 2017/01/04 by mason.seay Updated map #jira UE-29618 Change 3246606 on 2017/01/04 by Ori.Cohen 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. #tests Compiled Linux server with the changed PhysX and continuously ran bot matches for about a day. #JIRA UE-40156 Change 3246571 on 2017/01/04 by Marc.Audy 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 #jira UE-39994 Change 3246527 on 2017/01/04 by tim.gautier QAGame: BP_MediaPlayer now displays the name of the MediaPlayer plugin currently in use during playback #jira UE-29618 Change 3246480 on 2017/01/04 by mason.seay Map update #jira UE-29618 Change 3246470 on 2017/01/04 by Ori.Cohen Guard against infinitely thin geometry which fixes some nans. This showed up as issues in various projects #JIRA UE-00000 Change 3246413 on 2017/01/04 by Jon.Nabozny Cube asset did not have Tri Meshes. Reimported to fix the issue. -- Copied from 3233164 -- #jira UE-39657 Change 3246388 on 2017/01/04 by Jon.Nabozny Set 'p.MoveIgnoreFirstBlockingOverlap' to be enabled by default (3158732). This causes collision behavior to remain unchanged unless people opt in to the new behavior. -- Copied from 3239735 (bot health fixed by a different CL) -- #jira UE-39387 Change 3246352 on 2017/01/04 by Jon.Nabozny Fix FPredictProjectilePathParams to use a valid default value for TraceChannel. This requires the use of a new bool bTraceWithChannel which is enabled by default. -- Copied from 3239765 -- #JIRA UE-39726 Change 3246341 on 2017/01/04 by Ori.Cohen Allow vehicles to inherit from PawnMovementComponent and only use the pawn/ai capabilities when a Pawn owner is used. #JIRA UE-39508 Change 3246178 on 2017/01/04 by Andrew.Rodham Sequencer: When playback stops naturally, the play position is set to the boundary that caused playback to stop (the end if playing forwards, the start if playing backwards) - This is to reconcile the movie scene sequence player with previous behaviour #jira UE-40076 Change 3246102 on 2017/01/04 by Benn.Gallagher Fixed single threaded physics dispatcher triggering checks from clothing when running with a CPU with two or fewer cores. #jira UE-39811 Change 3246100 on 2017/01/04 by Benn.Gallagher Fixed ensure triggered when using root motion with sub instances Fixed crash reinstancing an active anim class that had subinstances #jira UE-39582 #jira UE-39579 Change 3246092 on 2017/01/04 by Marc.Audy PR #3082: Improve comment for UInputComponent (Contributed by Soleone) #jira UE-40098 Change 3246084 on 2017/01/04 by Matthew.Griffin Remove bad files Change 3246076 on 2017/01/04 by Matt.Kuhlenschmidt Fixed all non-editable text properties having a double disabled effect. The text box is read only which prevents edting but still allows copying text from it. This feature had regressed and the disabled effect on top of the read only effect made it too difficult to see the text. #jira UE-39652 Change 3246043 on 2017/01/04 by Steve.Robb Use of CastChecked instead of Cast in implementations of IStructSerializerBackend::WriteProperty. This is both more efficient and will hopefully make it easier to diagnose the issue. #jira UE-39872 Change 3246032 on 2017/01/04 by Martin.Wilson Change FindBoneIndex to FindRawBoneIndex (final bone maps are not built until after all adding is done so they will not be found) #jira UE-40105 Change 3246016 on 2017/01/04 by Andrew.Rodham Editor: Insert/Duplicate/Delete menu on array properties now only closes itself on click, rather than all menus - This allows us to edit such properties on context menus #jira UE-39998 Change 3246005 on 2017/01/04 by Thomas.Sarkanen Fixed asset attachment issues in Skeleton Tree Assets were being attached uniquely, so only one asset could be attached to a bone/socket. However the calling code didnt know that the unique attachment function just gave up, so the item just got added to the bottom of the tree. The attachment filter was not set correctly to allow for bone attatchments, so only sockets could be attached to. The attach parent name was not initialized, so assets could not be deleted one at a time. #jira UE-40040 - With multiple Preview assets on one bone, only one appears in Skeleton Tree #jira UE-40041 - Preview assets appear at the bottom of the skeleton tree Change 3246002 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed actor tick prerequisites not getting set up correctly for master sequences #jira UE-39975 Change 3245979 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed scrubbing audio tracks not working propertly #jira UE-40048 Change 3245978 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed dropping a level onto a level visibility section not marking the track as changed, and not correctly creating a transaction #jira UE-39998 Change 3245977 on 2017/01/04 by Andrew.Rodham Sequencer: Fixed crash caused by lingering persistent evaluation data #jira UE-40064 Change 3245971 on 2017/01/04 by Dmitriy.Dyomin Fixed: Using Set World Origin Location will cause the player pawn to stutter #jira UE-40022 Change 3245725 on 2017/01/03 by Matt.Barnes Further improvments on test assets for UEQATC-2963 #jira UE-29618 Change 3245658 on 2017/01/03 by Arciel.Rekman Linux: fix ARM32 build (UE-39913). #jira UE-39913 (Redoing CL 3240982 from Dev-Platform in Release-4.15) Change 3245577 on 2017/01/03 by Mason.Seay More vehicle updates #jira UE-29618 Change 3245556 on 2017/01/03 by Matt.Barnes Updating test content for UEQATC-2963 #jira UEQATC-2963 Change 3245461 on 2017/01/03 by mason.seay Updating Inertia Tensor Scale to improve Vehicle Handling #jira UE-40013 Change 3245442 on 2017/01/03 by Jeff.Fisher UEVR-495 Assert when switching to 2d mode. sceHmdReprojectionStart failing. -There was a race condition between switching output modes on the render thread and sceHmdReprojectionStart on the RHI thread. The flush fixes that. The reprojection would simply have failed that frame previously in shipping which would not matter much as we are switching output modes anyway. #jira UEVR-495 #review-3245374 Change 3245427 on 2017/01/03 by Jeff.Fisher UEVR-456 check if we are using camera before doing camera disconnected dialog on PSVR -If the tracker is active, but we are tracking nothing (ie we have the morpheus hmd tracking plugin, and started up with it, but switched to 2d mode) don't pop up the camera setup warning until we start trying to track something again. -This is useful for apps that have 2d and vr modes. #jira UEVR-456 #review-3245372 Change 3245329 on 2017/01/03 by mason.seay Level and vehicle tweaks #jira UE-29618 Change 3245275 on 2017/01/03 by Chris.Babcock Added EngineVersion to AndroidManfiest.xml metadata #jira UE-40123 #ue4 #android Change 3245235 on 2017/01/03 by Guillaume.Abadie Cherry picks CL 3234813 from Dev-Rendering: Fixes texture mask static lighting when using GBuffer selective outputs. #jira UE-39527 Change 3245183 on 2017/01/03 by Chris.Babcock Added missing #undef LOCTEXT_NAMESPACE to some files (contributed by projectgheist) #jira UE-40103 #PR #3085 #ue4 #android Change 3245120 on 2017/01/03 by mason.seay Missed some assets #jira UE-29618 Change 3245116 on 2017/01/03 by mason.seay Mass fucntional test #jira UE-29618 Change 3245049 on 2017/01/03 by Ben.Marsh PR #3086: Fixed ScriptGeneratorPlugin #includes (Contributed by projectgheist) Change 3244924 on 2017/01/03 by Ben.Zeigler #jira UE-40057 Fix regression in public access for SwapPlayerControllers, from GitHub #3072 Change 3244831 on 2017/01/03 by Mitchell.Wilson Fixed hole in collision around level. #jira UE-39576 Change 3244817 on 2017/01/03 by Matthew.Griffin Change check for files being under engine directory to avoid problems with relative paths #jira UE-40096 Change 3244801 on 2017/01/03 by Andrew.Rodham Editor: Fixed color picker not working when opened from a details panel on a context menu - When a color picker is opened from a details panel that's on a context menu, it now opens as a sub menu - Added the ability to find an open menu from a widget path to FSlateApplication #jira UE-39932 Change 3244776 on 2017/01/03 by Matt.Kuhlenschmidt Fix window handle and device context being accessed by scene viewports after the underlying window has been destroyed by the OS. This is an invalid state on linux and using some vr devices. #jira UE-7388 Change 3244672 on 2017/01/03 by Ben.Marsh Search all directories containing universal CRT installations from the registry, rather than assuming that the first one found will contain the universal CRT version we want to use. Attempt to fix issues described in PR #3059. Change 3244668 on 2017/01/03 by Thomas.Sarkanen Added "Reimport Animation" and "Export to FBX" to the animation editor toolbar Options were in the asset menu before. #jira UE-39643 - Missing "Reimport" option for animation assets Change 3244667 on 2017/01/03 by Thomas.Sarkanen Reduced default URO distances in-line with new LOD calculations New values should give (roughly) the same effect as the older values with the older system. #jira UE-39939 - URO LOD distance factors different with the new screen size metric Change 3244654 on 2017/01/03 by Matthew.Griffin Added functionality to specify Loading Phase for plugin templates Changed Blueprint Library Template so that it loads pre loading screen and can be linked correctly in blueprints that use it #jira UE-38826 Change 3244631 on 2017/01/03 by Dmitriy.Dyomin Fixed: TM_Landscape_LOD Folder does not Live Update contents after generating LODs with Create Per Package Asset #jira UE-37368 Change 3244548 on 2017/01/02 by Jack.Porter Fix for Post-process Materials rendering incorrectly in editor mobile preview after viewport is resized #jira UE-39905 Change 3244389 on 2016/12/30 by Phillip.Kavan [UE-39816] Fix broken pin links caused by renaming interface function input/output parameters prior to compiling the interface, but after renaming the function itself. Mirrored from //UE4/Dev-Blueprints (CL# 3244388). #jira UE-39816 Change 3244248 on 2016/12/29 by laz.matech Saved the new sublevel in the persistent level and set it to hidden by default #jira UE-29618 Change 3244213 on 2016/12/29 by laz.matech Added a sublevel to QA-Sequencer map #jira UE-29618 Change 3243857 on 2016/12/27 by samuel.proctor Altered Container asset to have proper console input #jira UE-29618 Change 3243852 on 2016/12/27 by Mason.Seay Forgot config file #jira UE-29618 Change 3243847 on 2016/12/27 by mason.seay Improved mobile input #jira UE-29618 Change 3243536 on 2016/12/24 by Phillip.Kavan [UE-39944] Extend the GetClassDefaults node to include output pin exceptions for TSet/TMap properties (i.e. mirror safeguards already in place for TArray). Mirrored from //UE4/Dev-Blueprints (CL# 3243210). #jira UE-39944 Change 3243535 on 2016/12/24 by Phillip.Kavan [UE-39816] Renaming interface input/output parameters will no longer cause broken pin links at interface function call sites in Blueprints that are currently loaded. Mirrored from //UE4/Dev-Blueprints (CL# 3243207). #jira UE-39816 Change 3243534 on 2016/12/24 by Phillip.Kavan [UE-39733] Fix incorrect graph pin value display names for user-defined enum types. Mirrored from //UE4/Dev-Blueprints (CL# 3239965). #jira UE-39733 Change 3243532 on 2016/12/24 by Phillip.Kavan [UE-39854] Fix nativized assets build error when there are no native code dependencies. Mirrored from //UE4/Dev-Blueprints (CL# 3239778). #jira UE-39854 Change 3243529 on 2016/12/24 by Phillip.Kavan [UE-38999] Dump component tree node hierarchy to the output log on error state during widget generation. Mirrored from //UE4/Dev-Blueprints (CL# 3239289). #jira UE-38999 Change 3243442 on 2016/12/23 by mason.seay QAGame cleanup - Replacing copy pose from mesh test assets #jira UE-29618 Change 3243215 on 2016/12/22 by Dmitriy.Dyomin Fixed: Switching to ES2 feature level preview renders black in editor #jira UE-40009 Change 3243185 on 2016/12/22 by Ryan.Vance #jira UEVR-478 Integrating 3235308 Mono changes from DevVR. Change 3243183 on 2016/12/22 by Ryan.Vance #jira UEVR-455 Integrating 3243173 post present call back implementation from 4.14.1 Change 3243182 on 2016/12/22 by Ryan.Vance #jira UE-39269 Working around a nullptr deref in the Oculus runtime. Change 3243153 on 2016/12/22 by mason.seay WIP map update #jira UE-29618 Change 3243128 on 2016/12/22 by andrew.porter QAGame: Adding Actor Sequence test content for a crash. #jira UE-29618 Change 3243117 on 2016/12/22 by Jeff.Fisher UE-34004 GitHub 2659 : Implement support for OpenVR controller roles. -Rather than assigning unreal hands to controllers in the order the controllers are connected assign unreal hands to match the ones the API is using. -We now defer setting up controllers that are disconnected. This lets connected controllers, that may have hand preference from steam, occupy their desired hands first. If a controller is connected later and does not have a role it is assigned to an unoccupied hand or to the right hand. -This can still end up ignoring role in the following circumstance (and I can get it to do this): get one controller to prefer'right' and the other to have no preference. Power off the 'right' prefering controller. Start the game with only the no-preference controller on. The game will put that controller in the right slot, because the api gives it no other hints. Then power on the controller that preferred 'right'. That controller will now be assigned left, because right is occupied. I don't see a way around that without the ability to switch which hand a controller is associated with at runtime. -This does not yet handle starting with 2 controllers, disconnecting one, then connecting a third controller well. That did not work before either. A new Jira was created for that. #2659 #jira UE-34004 #review-3231154 Change 3243093 on 2016/12/22 by mason.seay Some tweaks to vehicle levels #jira UE-29618 Change 3243084 on 2016/12/22 by andrew.porter QAGame: Cleaned up Sequencer_OverrideBindings #jira UE-29618 Change 3243009 on 2016/12/22 by andrew.porter QAGame: Renaming actor in Sequencer_OverrideBindings. #jira UE-29618 Change 3243003 on 2016/12/22 by andrew.porter QAGame: Removing override bindings from level sequence #jira UE-29618 Change 3242996 on 2016/12/22 by andrew.porter QAGame: Slight tweak to QA-Sequencer. #jira UE-29618 Change 3242982 on 2016/12/22 by Marc.Audy Properly reenable stats sounds in both game and level editor #jira UE-40015 Change 3242959 on 2016/12/22 by mason.seay Test map for vehicles and moving meshes #jira UE-29618 Change 3242934 on 2016/12/22 by andrew.porter QAGame: Adding test content to QA-Sequencer for Override Bindings #jira UE-29618 Change 3242870 on 2016/12/22 by Mason.Seay QAGame footprint reduction: Clearing out content (were in for old bug reports) #jira UE-29618 Change 3242799 on 2016/12/22 by tim.gautier QAGame - Adding the following assets for Sequencer Event Track testing: -TM-Sequencer_EventTrack + BuildData -QA_LightStruct -Sequencer_EventTrack #jira UE-29618 Change 3242792 on 2016/12/22 by samuel.proctor Correcting Container test asset for proper output #jira UE-29618 Change 3242727 on 2016/12/22 by Dmitriy.Dyomin Fixed: LoadLevelIntstance returns a reference that can't be used to send an interface message #jira UE-40005 Change 3242666 on 2016/12/22 by Dmitriy.Dyomin Fixed: Packaging Android app for Mali Graphics Debugger v4.3.0 fails #jira UE-39534 Change 3242373 on 2016/12/21 by Ori.Cohen Allow vehicles to override inertia tensor after any mass properties have changed. #JIRA UE-39566 Change 3242323 on 2016/12/21 by Josh.Adams - Somehow my last change just got completely lost in the edigrate shuffle. Or something. I have no idea! Rdoing it #jira UE-39966 Change 3242286 on 2016/12/21 by mason.seay Vehicle Assets and Maps #jira UE-29618 Change 3242284 on 2016/12/21 by Marc.Audy Fix "stat sounds" not working after PIE completes and a new one is begun #jira UE-32743 #jira UE-39511 Change 3242281 on 2016/12/21 by Ori.Cohen Fix multi select being very slow in phat #JIRA UE-39559 Change 3242229 on 2016/12/21 by Ben.Marsh Fixup workspace for building PhysX. Change 3242227 on 2016/12/21 by Marc.Audy Properly update listener position for stat sounds #jira UE-38850 Change 3242218 on 2016/12/21 by Ori.Cohen Fix physx html5 compilation APEX issue. #JIRA UE-39566 Change 3242174 on 2016/12/21 by Ori.Cohen Fix incorrect moment of inertia for convex elements with translation. #JIRA UE-39566 Change 3242145 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix for vehicle stability #JIRA UE-38710 Change 3242139 on 2016/12/21 by Ori.Cohen Port 4.14 hotfix: Fix crash when setting collision trace in construction script. #JIRA UE-39341 Change 3242088 on 2016/12/21 by Alexis.Matte Fix the drag and drop material on level instance to drop on the correct material slot Fix the serialization of the staticmesh property FMeshSectionInfoMap #jira UE-39952 Change 3242081 on 2016/12/21 by Andrew.Rodham Sequencer: Make details view focused when resetting inner struct contents to ensure that focus path is valid. #jira UE-39851 Change 3242079 on 2016/12/21 by Andrew.Rodham 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 #jira UE-39882 Change 3242078 on 2016/12/21 by Andrew.Rodham Sequencer: Fixed crash when deactivating a section in sequencer #jira UE-39880 Change 3242026 on 2016/12/21 by Josh.Adams - Fixed compile errors in tools after NVNRHI move #jira UE-39966 Change 3241994 on 2016/12/21 by andrew.porter QAGame: Disabled auto play on Sequencer_AnimNotify. #jira UE-29618 Change 3241989 on 2016/12/21 by Mitchell.Wilson Resolving CIS warnings in Content examples. Fixed up redirectors. Moved a texture from developer folder into project and relinked in POM_Debug material. Fixed up BP Commentary Box which was failing to compile. Updated spawn rate on Pulse Ring so it works as intended. #jira UE-39984 Change 3241986 on 2016/12/21 by mason.seay Vehicle Landscape Test map (mainly for crash investigation) #jira UE-29618 Change 3241914 on 2016/12/21 by Josh.Adams - Removed invalid and confusing .ini settings #jira UE-39982 Change 3241902 on 2016/12/21 by Josh.Adams - Moved NVNRHI stuff out of RHI.Build.cs #jira UE-39966 Change 3241889 on 2016/12/21 by andrew.porter QAGame: Added new level sequence to QA-Sequencer level #jira UE-29618 Change 3241884 on 2016/12/21 by Alexis.Matte Make sure the color grading cursor follow the mouse by using the exponent value when painting the cursor. #jira UE-39834 Change 3241869 on 2016/12/21 by andrew.porter QAGame: Adding test content for Sequencer Animation Notifies #jira UE-29618 Change 3241809 on 2016/12/21 by Chris.Wood Fix non-unity build errors in UnrealWatchdog. [UE-39940] - GitHub 3054 : Added EngineBuildSettings.h to UnrealWatchdog.cpp PR #3054: Added EngineBuildSettings.h to UnrealWatchdog.cpp (Contributed by ryanjon2040) #jira UE-39940 Change 3241806 on 2016/12/21 by Marc.Audy Don't unload and then reload streaming levels that are marked to be hidden. #jira UE-39883 Change 3241802 on 2016/12/21 by Marc.Audy Add new object flag RF_NeedInitialization to indicate that ~FObjectInitalizer and PostInitProperties have not been executed for the object Do not allow Modify calls on Objects that have not been initialized #jira UE-39731 Change 3241790 on 2016/12/21 by Marc.Audy Don't rerun construction scripts when an actor has seamless traveled from another level #jira UE-39699 Change 3241789 on 2016/12/21 by Marc.Audy Check Owner has a valid world before trying to access Scene (4.14.2) #jira UE-39560 Change 3241786 on 2016/12/21 by Marc.Audy Fixed crash when seamless travelling in PIE from levels other than the current editor level with a streaming sublevel shared with the current editor level #jira UE-39407 Change 3241781 on 2016/12/21 by Mitchell.Wilson Fixed up redirectors for SkeletalMesh and Personal Walkthroughs. #jira UE-30953 Change 3241747 on 2016/12/21 by mason.seay Tag Query test map and assets #jira UE-29618 Change 3240938 on 2016/12/20 by Ben.Marsh Remaking QFE fixes from 4.14 branch. Change 3240740 on 2016/12/20 by Ben.Marsh Update branch name for analytics. [CL 3272229 by Matthew Griffin in Main branch]
2017-01-25 16:23:41 -05:00
void UNavCollision::CopyUserSettings(const UNavCollision& OtherData)
{
CylinderCollision = OtherData.CylinderCollision;
BoxCollision = OtherData.BoxCollision;
AreaClass = OtherData.AreaClass;
bIsDynamicObstacle = OtherData.bIsDynamicObstacle;
bGatherConvexGeometry = OtherData.bGatherConvexGeometry;
}